我有一个使用正则表达式组解析的字符串。一组包含7个字符。但是,我不想让用户在同一个字段中输入所有7个字符。相反,我希望他们能够将3个字符输入到一个字段中,剩下的4个字符输入另一个字段中。这可能吗?如果是,我如何在这些单独的字段中使用onkeyup事件?
HTML:
<input style="float:left; width:5em" type=text name="txtPhoneArea" id="txtPhoneArea" width="5" maxlength="5" onkeyup="tabout(this,'txtPhoneNumber')" value="@Model.Store.AreaNumber" />
<input style="float:left; width:5em" type=text name="txtPhoneNumber" id="txtPhoneNumber" width="5" maxlength="3" value="@Model.Store.PhoneNumber" />
<input style="float:left; width:5em" type=text name="txtPhoneNumber" id="txtPhoneNumber" width="5" maxlength="4" value="@Model.Store.PhoneNumber"/>
功能:
function tabout(fromTextBox, toTextBox) {
var length = fromTextBox.value.length;
var maxLength = fromTextBox.getAttribute("maxLength");
if (length == maxLength) {
document.getElementById(toTextBox).focus();
}
};
答案 0 :(得分:0)
在第二个输入上添加一个onkeyup函数,并且id - txtPhoneNumber被添加到两个输入错误,每个输入字段应该有不同的id,所以将第三个输入字段id更改为txtPhone
<input style="float:left; width:5em" type=text name="txtPhoneArea" id="txtPhoneArea" width="5" maxlength="3" onkeyup="tabout(this,'txtPhoneNumber')" value="" />
<input style="float:left; width:5em" type=text name="txtPhoneNumber" onkeyup="tabout(this,'txtPhone')" id="txtPhoneNumber" width="5" maxlength="3" value="" />
<input style="float:left; width:5em" type=text name="txtPhone" id="txtPhone" width="5" maxlength="4" value="" />