使用Enter键在fieldset元素内的字段之间移动

时间:2014-01-28 08:02:31

标签: javascript html

如果没有fieldset,请输入(返回键)。

如果表格中需要fielset,我该怎么办?如果我添加fieldset

,则输入无效
<HTML>
<Head>
<Script Language=JavaScript>

function toEOT(isField){

isRange = isField.createTextRange();
isRange.move('textedit');
isRange.select();
}

function actTab(isField){

if (event.keyCode == 13)
{
nextField = isField.tabIndex;
nextField++;
if (nextField < document.forms.Form1.length)
{document.forms.Form1[nextField].focus()}
else {document.forms.Form1[0].focus()}
}
}

function init(){

document.forms.Form1[0].focus();
}

window.onload=init;

</Script>
</Head>
<Body>
<Form name='Form1'>
<fieldset>
<legend>Fills</legend>
<input type=text value="This is Some Text" size=25 onfocus="toEOT(this)" onkeyup="actTab(this)" tabindex='0'><br>
<input type=text value="Some Text" size=25 onfocus="toEOT(this)" onkeyup="actTab(this)" tabindex='1'><br>
<input type=text value="Nothing" size=25 onfocus="toEOT(this)" onkeyup="actTab(this)" tabindex='2'><br>
<input type=text value="Two Words" size=25 onfocus="toEOT(this)" onkeyup="actTab(this)" tabindex='3'><br>
</fieldset>
</Form>
</Body>
</HTML>

2 个答案:

答案 0 :(得分:0)

尝试将tabindex参数增加1,使其从1而不是0开始。

tabindex旨在与正整数一起使用,除非您尝试实现与tabindex通常设计的内容略有不同的内容。在MDN

上阅读更多相关信息

答案 1 :(得分:0)

我只是在每个输入元素上添加一个索引作为id或class,然后在你的actTab函数中,你可以从id或类中读取索引值,然后你可以使用jquery来选择下一个输入。