<form name="test_from">
<input type="hidden" name="a" id="a" value="2">
</form>
test_form.item("a")でアクセスするのと、
document.getElementById("a")でアクセスするのとでは、どのように違うのでしょうか?
また、オブジェクトがありませんなどエラー時に強い方法、例えば
フォームにaが無い場合でも、エラーを回避して、該当するデータがありませんなど独自のメッセージを出すことは可能でしょうか?
No.1ベストアンサー
- 回答日時:
IEとFirefoxで調べた範囲内ですが、
・ test_form.item("a")は、id属性として"a"があれば、IEのみ有効。
・ 両方でアクセスするには、elements配列を使って、"a"が最初の要素のとき
test_form.elements.item(0)
または
test_form.elements[0]
とする必要がありそうです。
test_form.elements.item("a")
または
test_form.elements["a"]
とするには、id属性として、"a"を設定しておく。
・ また、id属性をつけていても、IEで test_form.item("a")として拾えないものがありました。従ってこの場合は、
document.getElementById("a")
のほうがよいということになります。
・ nullとundefined値は、論理値としてはfalseに変換されるので、
------------------------------------------------------------
var e=test_form.elements.item("a");
if (e) {
alert("exist");
} else {
alert("not exist");
}
------------------------------------------------------------
で 処理できます。
以上の確認は、複雑なので見落としがあればお知らせください。
No.2
- 回答日時:
>test_form.item("a")
ここでいうtest_formはformについたnameでアクセスしようとしています。
いまはformに名前をつけることは非推奨になっているので選択肢としては格下です。
document.getElementById("a")でやるのが妥当でしょう
もしくは
<form id="test_form">
<input type="hidden" name="a" id="a" value="2">
</form>
として
document.getElementById("test_form")["a"]
まぁこんなことするくらいなら最初から子要素のidでアクセスする方が
速いですね。
また、formの要素にnameをつけることは当然問題ないのですが
ユニークであるかどうかは保障されていませんので、
サプライヤー側できちんと整合性をとってやる必要があるでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavascriptからSubmitして画面...
-
javascriptでASPにデータを渡す
-
iframe内のformをサブミットす...
-
FormのonsubmitでJavaスクリプ...
-
1つのページにformを2つ設置。2...
-
Javascriptでlocation.hrefが妙...
-
JavaScript:現在フォーカスの...
-
テキストボックスに任意のURLを...
-
複数のフォームを一括で自動送...
-
return trueとreturn falseの用...
-
<JavaScript>tableタグを入力不...
-
cookie使用時にundefinedと表示...
-
チェックボックスがundefinedと...
-
submitするとなぜか2度実行する
-
selectが変更されたらnameを指...
-
onchangeイベントを強制的に発...
-
eval()を使わずに数値を取得し...
-
フォームで入力した値を別のフ...
-
<input>の選択肢をプルダウンメ...
-
分岐数といえば
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FormのonsubmitでJavaスクリプ...
-
submitした値を返したい
-
javascriptでASPにデータを渡す
-
iframe内のformをサブミットす...
-
javascriptで .jpg , .jpeg , ....
-
POST時に要素を削除してからPOST
-
1つのform内に2つのsubmitボタ...
-
別ウィンドウへのsubmitの挙動...
-
C# 配列などの受け渡し
-
inputのvalueを変数として使うには
-
1つのページにformを2つ設置。2...
-
JavascriptからSubmitして画面...
-
Chromeで複数submit
-
focus()が上手くいかない
-
JavaScript:現在フォーカスの...
-
suggest.jsに関する質問
-
指定したタグを書き換えるには?
-
1つのformで複数のactionをボタ...
-
input type="image"の時、enter...
-
submitボタン押下後、disabled...
おすすめ情報