-2

常に 2 つの文字と一連の数字 (ab123456 など) で始まる生成された数値を 2 つの文字列に分割し、それらを 2 つのテキスト ボックスに入れるにはどうすればよいですか?

数値は JavaScript メソッドを使用して生成されます。

<div>数は次のように格納されます。

<div id="usernumber" class="usera"></div>

次のように 2 つのテキスト ボックスに書き込む必要があります。

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");
4

2 に答える 2

1

多くの情報を提供していないため、これはおそらく質問の一部にすぎません。文字列を 2 つの部分に分割し、2 つの異なるテキスト ボックスに配置します。

要件に基づいて複合文字列を分割する他のソリューションがあります。これは正規表現sliceを使用していますが、 orsubstrも同様に使用できます。

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;
}
于 2012-11-29T14:51:09.743 に答える
1
  • .slice()最初の 2 文字、次に文字を取得するために使用します。

  • 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);
};
于 2012-11-29T14:51:34.250 に答える