如何将始终以两个字母开头的生成数字和一系列数字(例如ab123456)分成两个字符串,然后将它们分成两个文本框?
使用JavaScript方法生成数字。
数字存储在<div>
中,如下所示:
<div id="usernumber" class="usera"></div>
需要将其写入两个文本框:
Response.Write("<td width=\"50%\"><input type=\"text\" id = \"userdepartment\" name=\"department\" size=\"3\" maxlength=\"2\"> <input type=\"text\" id = \"usernumber\" name=\"number\" size=\"10\" disp=\"Department Number\" maxlength=\"6\">\n");
答案 0 :(得分:1)
您没有提供太多信息,所以这可能只回答您问题的一部分。将您的字符串拆分为两部分并放入两个不同的文本框中。
还有其他解决方案可根据您的要求拆分复合字符串。这个使用正则表达式但您也可以使用slice
或substr
:
var s = "ab123456";
var rx = /([a-z]{2})(\d+)/i;
if (rx.test(s))
{
var split = rx.exec(s);
var letters = split[1];
var number = split[2];
document.getElementById("box1").value = letters;
document.getElementById("box2").value = number;
}
答案 1 :(得分:1)
使用.slice()
获取前两个字符,然后输入字符。
使用document.getElementById()
获取您的信箱。 (确保他们有ID)
将字符串分配给框的.value
属性。
document.getElementById("box1").value = mystring.slice(0,2);
document.getElementById("box2").value = mystring.slice(2);
对于您的更新问题,如果该号码是<div>
的文字内容,请执行以下操作:
window.onload = function() {
var text = ('textContent' in document) ? 'textContent' : 'innerText';
var number = document.getElementById("usernumber")[text];
document.getElementById("userdepartment").value = number.slice(0,2);
document.getElementById("usernumber").value = number.slice(2);
};