1

警报正在工作,但按钮不会单击...

$('#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>
4

3 回答 3

3

ui-button 由 jquery ui 生成

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

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

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

于 2013-03-26T15:34:19.847 回答
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/

于 2013-03-26T15:33:46.297 回答
2

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

 $('.ui-button').trigger('click');
于 2013-03-26T15:38:58.023 回答