1

我已经为一个按钮分配了一个点击事件,该按钮检索一个不同的 HTML 片段并使用 .html(string) 方法将其注入到一个 DIV 元素中。

$('#btnClose').click(function(){ 
   $.get('Content.html',function(data) {
      $('#EditCategory').html(data); 
   }); 
});

Content.html 页面如下:

<button id="btnNewCategory" type="button">Add new category</button>
<script type="text/javascript">
   $('#btnNewCategory').click(alert('Test'));
</script>

每次我单击“#btnClose”按钮时,都会显示 HTML 截图内容,但也会触发警报(“测试”)。我试过 stopPropagation(),preventDefault() 并返回 false;并没有喜乐。谁能阐明我做错了什么???

4

1 回答 1

1

你的处理程序应该是这样的:

$('#btnNewCategory').click(function() {
  alert('Test')
});

您当前拥有的是alert('Test') 立即触发并尝试将结果分配给单击处理程序,如果您希望它在单击时运行,请使用我上面的匿名函数。

这不是传播问题,请阅读此处以更好地理解这一点,而是具有约束力的问题:)

于 2010-08-04T01:23:43.920 回答