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