1

我有一个关于 jQuery 的问题。

我有一个 ajax 函数可以在成功后进行点击事件:

      var rowdiv = '#DiamondSetting';
        $(rowdiv).hide();
        $.ajax({

            type: "post",
            url: TabURL,
            data: "",

            beforeSend: function () {
                $(rowdiv).html('<table width="100%" border="0" cellpadding="3" cellspacing="0"><tr><td align="center"><img src="../Content/images/loading_row.gif" alt="updating" /><td></tr></table>');
            }, //show loading just when link is clicked 
            complete: function () {
                //$(updatediv).html("rejected");
            }, //stop showing loading when the process is complete 
            success: function (html) { //so, if data is retrieved, store it in html 
                //$(updatediv).html(html); //show the html inside .content div
                $(rowdiv).hide();
                $(rowdiv).fadeIn("slow");
                $(rowdiv).html(html);
                //select a particular metal after post back 
                $('input[id=metal0]').prop('checked', true).triggerHandler('click');
                $("#metal0").attr("disabled", true);

                $("#Romantic").bind('click');
            }
        });

如您所见,成功后:

我想要的是当我单击 id="Romantic" 的 li 内的链接时,将检查并禁用 id="metal0" 的复选框。

但是,它并没有触发 id="Romantic"..

每次我转到该页面时,都会检查并禁用 id="metal0" 的复选框。

所以当我重新加载页面时,jQuery 仍然会触发它..

重新加载页面后如何触发 jQuery 并将其删除?

感谢你们.. ;)

4

1 回答 1

2

页面上的 ID 是唯一的。

所以这 $('input[id=metal0]')可以写成$('#metal0')

下一个设置disabled属性不代表不会触发事件..你在找off方法

$("#metal0").off("click"); // This will unbind the event handler
                           // if you attached the event using on

这条线没有意义

$("#Romantic").bind('click');

您似乎正在绑定该事件,但没有与之关联的点击处理程序。

于 2013-06-21T02:48:19.550 回答