HTMLの方でちゃんとsIDというフィールドを作ったのに、
<input type="hidden" id="sID" name="sID" />
このgetElementByIdがIEでエラーになるのはどうしてでしょうか。
<script type="text/javascript">
document.getElementById("sID").value = User;
原因を見つけるのに数時間かかりましたが、このポストを見つけた人はもっと早く解決できるかも。
答えはHTMLのロードとJavascriptの実行のタイミングにありました。問題のgetElementById("sID") が呼び出される時にsIDというフィールドがロードされていなければエラーになるというわけです。ということはHTMLのロードを待ってからJavascriptを実行するようにすればいいわけです。例えば、
<script type="text/javascript">
function init() {
//関数に入れる
document.getElementById("sID").value = User;
}
.
.
.
<body onLoad="init()"> <!-- HTMLのロードを待って呼び出す-->
<input type="hidden" id="sID" name="sID" />
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿