2

我试图在使用 jquery 对话框显示的表单中设置所有输入元素的选项卡索引。当前的行为是,当用户开始制表时(第一个元素被设置为焦点,因此这是第一个),他们可以通过所有控件进行制表。我们的问题是他们可以继续标签到对话框后面的元素。

有没有办法可以防止这种情况发生,并且只能通过打开对话框中的表单元素进行选项卡?

4

3 回答 3

1

计算你有多少元素并设置它,以便如果你的 tabindex == numberOfTabs 它将重置为原始索引。

如果您需要在任何功能之外执行此操作等,请使用隐藏输入

然后在 js 中进行选项卡事件访问并将 tabindexCurrent val() 更新为新的

于 2011-09-20T21:12:52.227 回答
1

我给你逻辑。您可以相应地编写代码。

在表单的最后一个元素上添加一个事件处理程序来处理按键事件。

在处理函数内部,如果键不是 TAB,则必须返回 true,否则返回 false。

这意味着只有非 TAB 键才能在该字段上工作。

你可以谷歌标签的ascii代码。你谷歌代码来处理关键事件。

谢谢你

于 2011-09-20T21:18:03.757 回答
1

是的,这个问题有一个解决方案。我面临着同样的问题。

要使其正常工作,您必须使用jquery.ui.dialog.js……将其包含在您的页面上。还将您的 jQuery 模式对话框代码添加到document.ready.

于 2012-07-06T19:04:40.527 回答