点击jquery上的按钮问题
Click on button issue on jquery
我需要单击两次按钮 id '#a' 才能在我的控制台上显示控制台.log('A')。但是一旦你已经点击了两次,那么成功的点击就已经起作用了。我不明白为什么第一次尝试需要单击两次才能正常运行。任何帮助
<div class="modal fade" id="addData" tabindex="-1" role="dialog" aria-labelledby="myModalAdd" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalAdd">Add Category <small>» Category</small></h4>
</div>
<div class="modal-body">
<form class="form-horizontal">
<div id="container-option-add"></div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary btn-sm" id="a">Submit</button>
<button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
$('#addData').on('click', function() {
$(this).find('#a').off().on('click', function () {
console.log('A');
});
}).modal();
因为第一次单击该按钮时,您只是在注册事件侦听器,这意味着您之前没有侦听器,因此您的代码不会执行。
你必须这样做(jsFiddle):
$('#addData').on('click', function() {
if($(event.target).is("#a")){
console.log('A');
}
});
当你第一次点击按钮(或者至少看起来点击它)时,
此时事件处理程序未附加到按钮,因此 console.log() 不会触发。
然后,在本例中,该事件会冒泡到父#addData
,并触发该div
的单击事件。
现在,事件处理程序附加到按钮。
因此,下次单击该按钮时,事件处理程序将开始工作。
注意:该事件仍将继续传播到父级#addData
div。
这应该给你一个公平的想法
而不是嵌套的点击处理程序以这样的方式思考它,
function A(){
$("#a").off().on("click", function(){
//do Something
});
}
现在
在您呼叫 A()
之前,不会附加按钮的.on('click')
。
将其等同于您的代码,
$("#addData").on("click", function(){
A();
});
希望能:)回答您的问题虽然,我强烈建议您不要像现在这样嵌套事件处理程序。
这可能有效!我得到了答案
$('#addData').on('show.bs.modal', function() {
$(this).find('#a').off().on('click', function () {
console.log('A');
});
}).modal();
相关文章:
- 后退按钮问题
- Javascript上传按钮问题,适用于Wordpress
- 点击jquery上的按钮问题
- Safari浏览器返回按钮问题
- 表单操作过程中出现后退按钮问题
- 单选按钮切换按钮问题
- JavaScript/jQuery .click() 按钮问题
- 页面哈希和后退按钮问题 phonegap+Jquery
- 角度 UI 路由器后退按钮问题
- 将多个事件附加到 IE 中的按钮问题
- css 按钮宽度作为百分比?响应按钮问题
- JQuery 未检查单选按钮问题
- JavaScript 单选按钮问题
- 重置按钮问题
- Ember.js路由和后退按钮问题
- jquerymobile动态更改按钮问题的文本
- AngularJS中的Skype URI按钮问题
- 使用 jquery 多次点击按钮问题
- Windows Phone PhoneGap应用返回按钮问题
- 使用jquery和php提交按钮问题