1

同じクラス名の2つの入力値を持つJavaScriptの小さなフォームがあります。IDを指定することでターゲットにできることは知っていますが、配列値を使用してターゲットに設定する方法はありますか?

 <td>
  <input class="inputtextb" type="text" name="adults" maxlength="3">&nbsp;Adults&nbsp;
<input class="inputtextb" type="text" name="children" maxlength="3">&nbsp;Children   above 5 years&nbsp;

4

2 に答える 2

3

あなたはそのために使うことができますdocument.getElementsByClassName()

var inputs = document.getElementsByClassName('inputtextb');

inputs[0] // the first input
inputs[1] // the second input

それが機能しない場合(getElementsByClassNameを使用<input>できますか)、必要な要素を使用してすべての要素を反復document.getElementsByName()処理し、フィルターで除外できます。またはjQueryを使用します;-)

于 2013-01-17T14:14:58.660 に答える
0

次のコードを使用します。

var adults = document. getElementsByClassName('inputtextb')[0].value 
var children = document. getElementsByClassName('inputtextb')[1].value 

Firefox 3では、それを配列に変換してから呼び出すことができますforEach

var inputVals = document.getElementsByClassName("inputtextb");
var elsArray = Array.prototype.slice.call(inputVals, 0);
elsArray.forEach(function(el) {
    console.log(el.tagName);
});

注:配列を返すのではなく、NodeListオブジェクトを返します。

于 2013-01-17T14:25:12.587 に答える