0

我有一个这样的 div 是通过 ajax 加载的:

<div id="container">
    <a href="#" class="easyui-linkbutton submit_data">Click here to submit</a>
</div>

在我拥有 div 的同一个文件中,我有一个这样的脚本:

<script>
    $(function(){
        $('#container').on('click', 'a.submit_data', function(e){
            e.preventDefault();
            alert(test());
        });

        function test()
        {
            return 'This is a test';
        }
    });
</script>

我遇到的问题是,当我test()像上面那样在单击事件的回调中调用我的函数Uncaught TypeError: undefined is not a function时,单击按钮时出现错误(所以我什至没有收到警报)。test()但是如果我在点击处理程序之外调用我的函数,一切都会按预期工作。

Dpes有人知道为什么会这样吗?

谢谢

4

1 回答 1

-1

这有帮助吗?我不确定你在寻找什么。我清理了脚本和点击事件。

Codepen 草图

jQuery

$('.submit-data').on('click', function(event){
  event.preventDefault();
  alert(myFunction());
});

var myFunction = function(){
  return 'This is a test';
}

HTMLsubmit_data将类更改submit-data为更好的选择器约定。

<div id="container">
  <a href="#" class="easyui-linkbutton submit-data">Click here to submit</a>
</div>
于 2013-08-20T02:31:40.847 回答