jEditable在TAB和ENTER上提交

时间:2011-10-21 15:53:26

标签: jquery jeditable

只要用户点击ENTER退出输入,我的jEditables就可以正常工作。但是,如果用户点击TAB,则不会发布更改。这是正确且记录在案的行为。

我希望TAB像ENTER一样工作。我不需要影响任何其他jEditables,只需将当前活动的jEditable发回,就好像ENTER被击中一样。

有没有办法将keydown处理程序绑定到jEditable控件?

如果我必须提供keydown处理程序,有没有办法以编程方式告诉jEditable控件发布自己而不从控件中提取id和值?

1 个答案:

答案 0 :(得分:6)

您可以在click之后绑定.editable()事件,因此它会在jEditable的事件之后触发,该事件会设置表单。然后将keydown事件绑定到侦听TAB键的文本框。因此,假设您正在处理文本框,您可以执行以下操作:

$('.editable').editable('url', {
    ...
}).click(function(evt) {
    $(this).find('input').keydown(function(event) {
        if (event.which == 9) //'TAB'
            $(this).closest('form').submit();
    });
});

请参阅此操作:http://jsfiddle.net/william/6VUHh/5/