• ベストアンサー

IF文でタグの値を確認する

全くの初心者です。 以下でmyIDには9が入っていると思うのですが <div id="hidden"> <input type="hidden" name="myID" id="myID" value="9"> Scriptで <script type="text/javascript"> if (myID = "9") alert("test"); </script> では反応しません。恐らく変数に値を持って行く方法が必要なのだ とは思うのですが お教え下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • ryu_chan
  • ベストアンサー率37% (69/186)
回答No.2

onloadにすると、ファイルを全部読み終わってからonloadで指定した関数が実行 されます。 以下のように、スクリプトの実行をHTML記述の最後に書けば、意図した結果が得 られますが、 <body> <div id="hidden"> <input type="hidden" name="myID" id="myID" value="9"> </div> </body> <script type="text/javascript"> alert( document.getElementById("myID").value ); </script> 以下のように、スクリプトを先に書くと、 <script type="text/javascript"> alert( document.getElementById("myID").value ); </script> <body> <div id="hidden"> <input type="hidden" name="myID" id="myID" value="9"> </div> </body> 下にあるHTMLがまだ読み込まれていない段階で実行されるので、HTMLの内容が取 得できずにエラーになってしまいます。 なので、No.1ではファイルを全部読み込んでから実行するようにしました。

yotarou
質問者

お礼

良く分かりました。 意味が分かると、前に進めそうな気がしてきます。 丁寧な解説ありがとう御座いました。

その他の回答 (1)

  • ryu_chan
  • ベストアンサー率37% (69/186)
回答No.1

以下でどうでしょうか? <script type="text/javascript"> onload = function() { alert( document.getElementById("myID").value ); } </script>

yotarou
質問者

お礼

ありがとうございます。 Onloadをつけた場合とない場合はどうちがいますか

関連するQ&A

専門家に質問してみよう