我试图在使用 jquery 对话框显示的表单中设置所有输入元素的选项卡索引。当前的行为是,当用户开始制表时(第一个元素被设置为焦点,因此这是第一个),他们可以通过所有控件进行制表。我们的问题是他们可以继续标签到对话框后面的元素。
有没有办法可以防止这种情况发生,并且只能通过打开对话框中的表单元素进行选项卡?
我试图在使用 jquery 对话框显示的表单中设置所有输入元素的选项卡索引。当前的行为是,当用户开始制表时(第一个元素被设置为焦点,因此这是第一个),他们可以通过所有控件进行制表。我们的问题是他们可以继续标签到对话框后面的元素。
有没有办法可以防止这种情况发生,并且只能通过打开对话框中的表单元素进行选项卡?
计算你有多少元素并设置它,以便如果你的 tabindex == numberOfTabs 它将重置为原始索引。
如果您需要在任何功能之外执行此操作等,请使用隐藏输入
然后在 js 中进行选项卡事件访问并将 tabindexCurrent val() 更新为新的
我给你逻辑。您可以相应地编写代码。
在表单的最后一个元素上添加一个事件处理程序来处理按键事件。
在处理函数内部,如果键不是 TAB,则必须返回 true,否则返回 false。
这意味着只有非 TAB 键才能在该字段上工作。
你可以谷歌标签的ascii代码。你谷歌代码来处理关键事件。
谢谢你
是的,这个问题有一个解决方案。我面临着同样的问题。
要使其正常工作,您必须使用jquery.ui.dialog.js
……将其包含在您的页面上。还将您的 jQuery 模式对话框代码添加到document.ready
.