0

これは私のhtmlです:

<div class="myFormField">
     <input type="text" class="myFormField city" value="" name="city" id="city">
</div>

以下を設定しようとしていますが、機能していません。アラートでテストすると、未定義が返されます。

document.getElementsByClassName("myFormField city").value = "New York";

どんな助けでも感謝します!

4

4 に答える 4

2
document.getElementsByClassName("myFormField city")

要素の配列を返します

だから使う

document.getElementsByClassName("myFormField city")[0].value
于 2013-06-17T10:09:44.440 に答える
2

そのはず:

document.getElementsByClassName("myFormField city")[0].value = "New York";

のドキュメントを参照してくださいgetElementsByClassName

「指定されたすべてのクラス名を持つ要素のセットを返します。」

getElementsByClassName要素のセットを返すため、そのセット内の特定の要素にアクセスして値を指定する必要があります。セットの最初の要素は[0]、2 番目の要素は[1]などです。

ここでjsFiddle。

于 2013-06-17T10:08:45.580 に答える
1

document.getElementsByClassNameは指定されたクラス名を持つ要素の配列を取得することに注意してください。したがって、コードは次のようになります。

document.getElementsByClassName("myFormField city")[0].value = "New York"
于 2013-06-17T10:10:33.263 に答える
0

IDもお持ちです

document.getElementById("city").value = "New York";

于 2013-06-17T10:11:05.907 に答える