一尘不染

为什么这个jQuery ajax click事件多次触发?

ajax

我尝试解除绑定click事件,但有时会触发两次,有时会触发5次!现在有点烦了!

来自的代码 modal.asp

$("input[name=add_associate]").live("click",function(){
    var addassociateID = $(this).attr("id")

    $.ajax({
       type: 'POST',
       url: '/data/watchlist_save.asp',
       data: {m : 'share_watchlist_add', watchListID : <%=WatchListID%>, a : addassociateID},
       async:true,
       success: function(data) {
           $(".associate_users").load("/data/sub_watch_members.asp?watchListID=<%=WatchListID%>",
           {cache:false},function() {
               $(".search_note").html(data)         
               $(this).unbind('click').bind('click',handler);                                                                                                
           })
       },
       error: function(data){
           $(".search_note").html(data)
       }
    });     
})

更新
基本上我正在将以下代码.associate_users

<div id="associate_list">
    <div class="associate_record">
        <div class="left" style="padding:8px;"><img src="../imgs/nopic-m.png" style="width:30px;height:30px;" class="img_border" /></div>
        <div class="left" style="padding-top:15px;">5)Neil Burton</div>
        <div class="right" style="padding-top:10px;margin-right:5px;"><input type="button" class="btn-blue" name="add_associate" id="890" value="Add"></div>
        <div style="clear:both;"></div>
    </div>
    <div style="clear:both;"></div>
</div>

更多信息
这仅在我触发事件时发生,关闭模式对话框,然后使用其他对话框重新打开watchListID

数据结构:

  • main.asp :负载>
  • modal.asp :modal.asp包含上面的jquery +此页面上的两个div,其中包含panel1.asp和panel2.asp数据…
  • panel1.asp :包含上面的HTML …
  • panel2.asp :不包含任何相关内容……仅是纯HTML。

阅读 254

收藏
2020-07-26

共1个答案

一尘不染

我已经解决了这个问题,我正在使用

$(document).ready

在加载的ajax内容中以及…

<script src="/js/jquery-ui.js"></script>

因此,我认为它是“实时”功能的两倍!

非常感谢您的答复。

2020-07-26