我使用 javascript 设置了一个 anchor 标记,以便 onclick ,我调用一个函数 showSavingsEasterEgg 并传递一个值。我遇到的问题是我没有正确引用我的函数:
ReferenceError: showSavingsEasterEgg is not defined
我已经尝试将 showSavingsEasterEgg 函数移动到 showData 函数中,看看它是否解决了范围界定问题,但没有解决。

有小费吗

define(["jquery", "go/util", "underscore", "jqueryui/slider"], function ($, util,_) {

  function showData(data) {
    $('#item').append('<a class="savings_link" href="#" onclick=\'showSavingsEasterEgg('+data[key]['saving']+')\'> Savings');
  }

  function showSavingsEasterEgg(data){
    console.log("SUccess");
    console.log(data);
  }

});

最佳答案

showSavingsEasterEgg 的定义直接放在全局作用域中。

在这里,找不到。

你可以这样做 :

window.showSavingsEasterEgg = function (data){
    console.log("SUccess");
    console.log(data);
};
define(["jquery", "go/util", "underscore", "jqueryui/slider"], function ($, util,_) {
  function showData(data) {
    $('#item').append('<a class="savings_link" href="#" onclick=\'showSavingsEasterEgg('+data[key]['saving']+')\'> Savings');
  }
});

关于javascript - 引用错误 : function is not defined when using onclick,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13325067/

10-16 13:41