jQuery UI对话框按钮不会单击

时间:2013-03-26 15:26:36

标签: javascript jquery jquery-ui

警报正常,但按钮不会点击...

$('#loginDialog .field input').keyup(function (e) {
     if (e.keyCode == 13) {
         alert('it is working!');
         $('.ui-button').click();
         return false;
     }
});

我尝试了很多不同的东西,包括在打开对话框时重新初始化方法,但似乎没有任何工作......

HTML:

<div id="loginDialog" title="Please Login">
     <div class="label">Password:</div>
     <div class="field"><input type="password" /></div>
</div>

3 个答案:

答案 0 :(得分:3)

  

ui按钮由jquery ui

生成

我假设您的评论中按钮是动态生成的,并且您绑定的任何点击事件都必须使用事件委托进行绑定,类似于:

$('body').on('click', '.ui-button', function(){...)

使用最接近的静态元素代替body,也可以使用,并且是首选。

答案 1 :(得分:2)

请试试这个:

$(function() {
$('#loginDialog .field input').keyup(function (e) {
     if (e.keyCode == 13) {
         alert('it is working!');
         $('.ui-button').trigger('click');
         return false;
     }
});

$('.ui-button').click(function() {
   alert('hello world'); 
});
};

这里有一个例子:http://jsfiddle.net/netme/YZH3B/

答案 2 :(得分:2)

这应该触发事件......

 $('.ui-button').trigger('click');