0

連想配列としてのhtmlフォーム要素名に問題があります。

<form name="ff" action="" method="POST">
<input name="student[john]" value="John">
<input name="student[kofi]">
<input name="student[kwame]">
<input type="submit" name="submit">
</form>
<a onclick="alert(document.ff.student[john].value);">a<a>

JSエラーが発生します:「キャッチされない例外:ReferenceError:未定義の変数:john」

ただし、このコードは角かっこなしのフォーム要素名で正常に機能します。

UPD:

ラジオ要素から値を取得する方法に戸惑っています(同じ名前のラジオのグループとして表されています)

4

2 に答える 2

2

特殊文字を含むプロパティにアクセスするには、角括弧表記を使用する必要があります

<a onclick="alert(document.ff['student[john]'].value);">a<a>

デモ

于 2013-01-08T20:12:15.273 に答える
2

要素名は配列ではありません。

試す:

document.ff.elements['student[john]'].value
于 2013-01-08T20:13:16.143 に答える