使用jquery 1.11.3.min.js时,jquery on click事件未触发。

时间:2016-06-10 13:37:50

标签: javascript jquery

根据以下html控件,如果我尝试更改" id"提交到"保存" ,点击保存不起作用。

HTML

<html>
<head>
</head>
<body>
<input type="button" value="Submit Request" id="Submit"class="buttonclass"/>               
<input type="button" id="cancel" value="Cancel" class="buttonclass" />
</body>
</html

以下JS代码:

   $("#Submit").on({
    click: function () {             

        $(this).attr('id', 'Save');           
        return false;
    }
   });

   $("#Save").on({
    click: function () {            
       alert("Save Event Fired"); 
    }
   });

1 个答案:

答案 0 :(得分:2)

您没有将click事件绑定到#Save,因为id #Save仅在按下Submit按钮后存在(加载时没有#Save)。但是如果你将click事件放在body上并且只接受#Save,你可以将事件冒泡并在那里处理它。

$("#Submit").on('click', function (e) {
    e.stopPropagation()

    alert("Submitted Fired"); 
    $(e.target).attr('id', 'Save');           
    $(this).unbind('click');
})

$("body").on('click', '#Save', function (e) {
    alert("Save Event Fired"); 
})

https://jsfiddle.net/6Lchafwa/1/
如果这是您正在寻找的答案,请按左侧的绿色勾号。