在jquery diglog插件中是否有“输入”选项提交?

时间:2009-09-09 09:03:45

标签: jquery event-handling dialog

网址在这里:

http://jqueryui.com/demos/dialog/#modal

假设此对话框包含两个按钮:“确定”和“否”,

当按下“Enter”时,我希望调用带有“OK”按钮的功能。

怎么做?

对话框是这样的:

<table cellpadding="0" border="0" width="100%">
    <tr align="center">
        <td align="right">name/email:</td>
        <td><input type="text" id="name" /></td>
    </tr>
    <tr align="center">
        <td align="right" valign="top">password:</td>
        <td>
                <input type="text" id="psw" />
        </td>
    </tr>
    <tr align="center">
        <td></td>
        <td><span id="loginErr"></span></td>
    </tr>
</table>

4 个答案:

答案 0 :(得分:2)

将“Ok”按钮分配给标签并给予焦点(如果第一件事不能单独正常工作)

答案 1 :(得分:1)

您可以通过添加选项对象

轻松添加自定义按钮
buttons: {
'Button OK': function() {
  // Do something
 },
'Button No': function() {
  // Do something
}

在按键输入时提交表单字段,只需执行以下操作:

$("#name").keydown(function(event){
    if(event.keyCode == "13") {
        // call the function for submit the form
    }
});

所有KeyCodes的完整来源请在此处找到: http://unixpapa.com/js/key.html

答案 2 :(得分:1)

要么使用snuffer-ch建议的那个,要么使用http://code.google.com/p/js-hotkeys/中的jQuery-Hotkeys插件,这样就可以了:

$(document).bind('keydown', 'return', function(){
  //your code goes here
});

答案 3 :(得分:0)

不,这个功能不是开箱即用的,你需要自己添加它或找一个添加它的插件(我不知道我的头脑中的一个)。

一种可能的解决方案是侦听对话框的keyup事件并确定它是否源自<input>元素。如果是这样,查询buttons成员的对话框选项并调用第一个按钮的处理函数(非常接近单击默认按钮)。