javascript - jQuery 函数在进行 ajax 调用后不起作用

标签 javascript jquery asp.net ajax

页面中有一个下拉列表 - ddlFilter,页面加载时还有一个复选框(divData 中的 id 为 239)。更改下拉列表的值将进行 ajax 调用,然后将 divData 的内容替换为收到的内容。接收到的内容是另一个复选框(比如 id 249)的 HTML。
单击任何复选框时,它应该触发 showProduct()

问题:最初在页面加载后,当我单击复选框 239 时,showProduct 被触发。但是在更改下拉列表并单击复选框 249 后,该功能未被触发。

控制台没有错误。我认为事件处理未绑定(bind)到异步添加的复选框。我该如何解决这个问题。

ASPX:

<asp:dropdownlist id="ddlFilter" runat="server/>

<div id="divData">
<input type="checkbox" class="chkBx" id="239"> --line 1

<!--On changing the dropdown value, line 1 will be replaced by this.-->
<!--<input type="checkbox" class="chkBx" id="249">-->
</div>

JS:

$(document).ready(function(){
 $("#ddlFilter").change(function(){
   //code to make ajax call and bind new html inside divData
 })

 $(".chkBx").change(function(){
   showProduct();
 })
})

function showProduct(){
  alert();
}

最佳答案

试试这个

 $( "body" ).delegate( ".chkBx", "change", function() {
       showProduct();
    });

    $( "body" ).on("change",".chkBx",function(){
       showProduct();
     });

关于javascript - jQuery 函数在进行 ajax 调用后不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34524281/

相关文章:

javascript - 无法对对象数组进行排序

javascript - javascript中符号传播右移和零填充右移之间的区别?

javascript - POST 数据的合金集合和模型

c# - 无法在 IIS 上托管 asp .net web api

sql - azure 的云。每个(asp.net 注册)客户端一个数据库

ASP.NET MVC - Linq to Entities 模型作为 ViewModel - 这是好的做法吗?

javascript - 如何从 JavaScript 字符串中删除无效的 UTF-8 字符?

javascript - jQuery detach() vs remove() vs hide()

javascript - Ember 使用 this.render 将数据传递到模板时出现问题

javascript - Backbone 集合没有没有这样的方法各有