Javascript 如何从水平方向设置html的选项卡顺序?
我有一个多表单,包含2个输入框和一个提交按钮。我已经为每个输入指定了制表符顺序。我有每个输入类型的选项卡索引。制表符顺序是垂直移动而不是水平移动。它应该进入第一个输入框,第二个输入框,然后提交按钮 下面是代码Javascript 如何从水平方向设置html的选项卡顺序?,javascript,jquery,html,css,forms,Javascript,Jquery,Html,Css,Forms,我有一个多表单,包含2个输入框和一个提交按钮。我已经为每个输入指定了制表符顺序。我有每个输入类型的选项卡索引。制表符顺序是垂直移动而不是水平移动。它应该进入第一个输入框,第二个输入框,然后提交按钮 下面是代码 <form class="monitorForm" > <div class="monitorAdd"> textbox1 <input type="text" tabindex="1"> textbox2 <input t
<form class="monitorForm" >
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
文本框1
文本框2
文本框1
文本框2
文本框1
文本框2
下面是js代码
$('form').each(function(){
var list = $(this).find('*[tabindex]').sort(function(a,b){ return a.tabIndex < b.tabIndex ? -1 : 1; }),
first = list.first();
list.last().on('keydown', function(e){
if( e.keyCode === 9 ) {
first.focus();
return false;
}
});
});
$('form')。每个(函数(){
var list=$(this).find('*[tabindex]').sort(函数(a,b){返回a.tabindex
它是一种动态形式,循环出现,包含许多字段。我只想为3个输入字段指定制表符顺序 请帮我解决这个问题。 提前感谢。
jQuery-Way
HTML方式
你可以直接给Tabindex
文本框1
文本框2
文本框1
文本框2
文本框1
文本框2
如果不定义默认为水平的tabindex属性,则不需要任何tabindex或jquery设置不同的选项卡索引。对于你的情况,将其设置为1到9。
set distinct tab index. for your case set it in 1 t0 9.
Like
<form class="monitorForm" >
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="4">
textbox2 <input type="text" tabindex="5">
<input type="button" tabindex="6" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="7">
textbox2 <input type="text" tabindex="8">
<input type="button" tabindex="9" value="submit">
</div>
</form>
喜欢
文本框1
文本框2
文本框1
文本框2
文本框1
文本框2
所有的
选项卡index=1
都将按照从上到下的顺序进行,无论您是将它们放在单个
还是不同的中。然后轮到tabindex=2
您的解决方案:
将tabindex更改为1,2,3,4,5,6。。而不是1,2,3,1,2,3
希望这有帮助。:) 指定单个tabindex值,而不是覆盖您的tabindex值
@pushpa:remove js code and remove tabindex attribute,它可以水平工作,你不需要为此做任何事情谢谢。我想,我可以使用jquery的方式添加tabindex。因为它是一个动态的形式,循环出现,包含许多字段。我只想给3个输入字段下订单。所以我不能在HTML中给出单独的索引值。如果想要使用jquery进行垂直选项卡索引呢?它是一种动态形式,循环出现,包含许多字段。我只想为3个输入字段指定制表符顺序。这是一个动态表单,循环出现,包含许多字段。我只想为3个输入字段指定制表符顺序。
<form class="monitorForm" >
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="4">
textbox2 <input type="text" tabindex="5">
<input type="button" tabindex="6" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="7">
textbox2 <input type="text" tabindex="8">
<input type="button" tabindex="9" value="submit">
</div>
</form>
set distinct tab index. for your case set it in 1 t0 9.
Like
<form class="monitorForm" >
<div class="monitorAdd">
textbox1 <input type="text" tabindex="1">
textbox2 <input type="text" tabindex="2">
<input type="button" tabindex="3" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="4">
textbox2 <input type="text" tabindex="5">
<input type="button" tabindex="6" value="submit">
</div>
</form>
<form class="monitorForm">
<div class="monitorAdd">
textbox1 <input type="text" tabindex="7">
textbox2 <input type="text" tabindex="8">
<input type="button" tabindex="9" value="submit">
</div>
</form>