我的功能没有被调用

时间:2016-02-03 06:12:17

标签: javascript html5

我有以下代码,这在我看来是正确的:

<button onclick="clear()" class="button button-positive btn">Delete Local Storage</button>

这个功能:

function clear() {
  localStorage.clear();
  console.log("Hello")
}

该函数不会被调用,也不会被调用。

文件已正确链接。

任何帮助非常感谢

5 个答案:

答案 0 :(得分:2)

似乎clear是保留关键字,请使用其他功能名称,例如clearLog()而不是clear()

&#13;
&#13;
function clearLog() {
   localStorage.clear();
   console.log("Hello")
}
&#13;
<button onClick="clearLog()" class="button button-positive btn">Delete Local Storage</button>
&#13;
&#13;
&#13;

<强>更新

正如 Arun 所说,clear保留了相同的范围document.clear()

答案 1 :(得分:1)

问题出在内联事件处理程序范围内,clear指的是document.clear()方法。

您可以重命名该方法以将其命名为

&#13;
&#13;
function clearMe() {
  localStorage.clear();
  console.log("Hello")
}
&#13;
<button onclick="console.log(clear);clearMe()" class="button button-positive btn">Delete Local Storage</button>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

您不能将clear用作函数名称。似乎被调用的函数是  调用document.clear()

function clearStorage() {
  localStorage.clear();
  console.log("Hello");
}
<button onclick="clearStorage()" class="button button-positive btn">Delete Local Storage</button>

  

注意:尽量不要使用全局命名空间或函数

答案 3 :(得分:0)

试试此代码

    <button onclick="javascript:Clear()" class="button button-positive btn">Delete Local Storage</button>
   <script>
    function Clear() {
      console.log("before localstorage clear");
    try{      
      localStorage.clear();
   }
     catch(err){
     console.log("err in clearing function "+err);
}
      console.log("Hello");
    }
    </script>

由于localstorage.clear()函数

,可能会出错

答案 4 :(得分:0)

您只需重命名您的功能即可clear是保留关键字

    function clr() {
      localStorage.clear();
      console.log("Hello")
    }

这是HTML

<button onclick="clr()" class="button button-positive btn">Delete Local Storage</button>