首页 新闻 搜索 专区 学院

JQuery 修改ID后 如何取消前面一个ID绑定事件

0
[已解决问题] 解决于 2017-08-21 20:59

   

$('#Previous_page').attr('name', $(obj).html());
    $('#Previous_page').attr('id', 'Previous_pageTime');

修改了ID

$(document).on("click", "#Previous_pageTime", function () {
    var Parameter = $("#Previous_pageTime").attr("name");
    alert(Parameter);
    public_ajaxParameter("Previous_pageTime", Parameter);
});

但是会执行两个function  一个是没有修改之前的  一个是修改之后的

落幕。的主页 落幕。 | 初学一级 | 园豆:2
提问于:2017-07-21 15:04
< >
分享
最佳答案
0

$("#Previous_page").off("click");

奖励园豆:5
默卿 | 老鸟四级 |园豆:4524 | 2017-07-21 15:17

$(document).on("click", "#Previous_pageTime", function () {

$("#Previous_page").off("click");  放在这里?  还是会执行没有修改前的函数
    var Parameter = $("#Previous_pageTime").attr("name");
    alert(Parameter);
    public_ajaxParameter("Previous_pageTime", Parameter);
});

落幕。 | 园豆:2 (初学一级) | 2017-07-21 15:25

@落幕。: 不太懂你的逻辑 off只是去绑定事件的方法,如果没有效果应该是放错了地方或者哪里代码还有问题吧,应该是哪里逻辑不对,JS这种问题要整个一起看,你说"但是会执行两个function",但我只看到一个点击事件,public_ajaxParameter()这个方法是干啥的?如果对解决问题没有用就不用贴出来了,"会执行两个function ",是指 alert(Parameter);弹窗了两次吗?这些问题你都要交代清楚.另一方面就是,尽量不要修改一个元素的id,你可以加class也可以加自定义属性,但是id就是id,它是唯一标识,最好被动态修改,会出"事"

默卿 | 园豆:4524 (老鸟四级) | 2017-07-21 16:03

@落幕。: https://www.zhihu.com/question/32137301

默卿 | 园豆:4524 (老鸟四级) | 2017-07-21 16:05

@冷星淡月:使用ajax 来做分页   但是要用时间来分个类来显示数据 获得的数据不一样 所以我想用改变ID来执行不一样的ajax。

落幕。 | 园豆:2 (初学一级) | 2017-07-21 16:14

@落幕。: 不用吧...把时间这个分类作为参数传进去就可以了 每次选择的时间不一样,时间参数获取到的值就不一样,这才是你想要的"执行不一样的ajax"吧....

默卿 | 园豆:4524 (老鸟四级) | 2017-07-21 16:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册