2016-09-27 5 views
1

У меня есть следующий код html для очистки данных веб-хранилища после нажатия кнопки «Очистить хранилище».onclick никогда не выполняет функцию

Проводник (хром и firefox) просто не запускает функцию очистки после щелчка кнопки с четким хранилищем.

Код:

<html> 
<head> 
<script> 

function clear() { 
    console.log(); 
    localStorage.clear(); 
    refreshContents(); 
    alert("all cache data cleared!"); 
} 

function refreshContents() { 
var str = ""; 

alert("in refresh"); 
for (var i = 0, len = localStorage.length; i < len; i++) { 
    var k = localStorage.key(i); 
    var v = localStorage.getItem(k); 
    str += "'" + k + "' = '" + v + "'<br />"; 
} 
alert("after for loop"); 
key.value = ""; 
value.value = ""; 
content.innerHTML = str; 
} 
</script> 
</head> 
<body> 
<div class="content"> <!-- end .content --> 
<p>This is the logout page.</p> 
<p>All temporary data will be erased after logout.  
<p>&nbsp;</p> 
<input type="button" onclick="clear();" value="Clear Storage" />&nbsp; 
Contents of Local Storage:<br /> 
<span id="content"></span> 
</body> 
</html> 

Может кто-то помочь, пожалуйста. Спасибо заранее!

+0

Попробуйте изменить имя на 'clearStorage' – Tushar

ответ

-2
<script type="text/javascript"> 
function clear() { 
    console.log(); 
    localStorage.clear(); 
    refreshContents(); 
    alert("all cache data cleared!"); 
} 

function refreshContents() { 
var str = ""; 

alert("in refresh"); 
for (var i = 0, len = localStorage.length; i < len; i++) { 
    var k = localStorage.key(i); 
    var v = localStorage.getItem(k); 
    str += "'" + k + "' = '" + v + "'<br />"; 
} 
alert("after for loop"); 
key.value = ""; 
value.value = ""; 
content.innerHTML = str; 
} 
</script> 

тег Update Script

Я думаю, что это одна поможет вам

+0

№. JavaScript является типом по умолчанию, а с HTML 5 атрибут type является необязательным. Единственное, что он делает, когда вы пишете JavaScript, дает вам возможность сделать опечатку и сломать скрипт. – Quentin

0

Изменение имени функции сделал трюк. Просто измените название своей функции от clear до любого слова clearABC и оно будет работать.

function clearABC() 
{ 
} 

Причина этого в этом посте: is clear a reserved word in javascript

Надеется, что это помогает, Приветствия

Счастливые кодированиям !!

Смежные вопросы