- ベストアンサー
hiddenのvalueの値を変えたい
おはようございます。 教えていただきたいことがあります。 HTMLのほうに <input type="hidden" name="btn" value=""> と書きます。 それでJavaSctiptのfunctionの中で document.forms[0].btn.value=funcitonの引数; とやっているのですが、hiddenのvalueの中に値が入っていないようです。 どうしてでしょうか? こういう使い方ってできないものなのでしょうか? 宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
functionから値を設定できるはずですよ。 「forms[0]」ありますが、複数フォームを定義したりはしていないでしょうか? 直接、フォーム名を記述した方が、安全かもしれません。 下記のように作成すれば、動作しました。 <html> <head> <script type="text/javascript"> <!-- function setVal(val) { document.forms.test_form1.btn.value=val document.forms.test_form1.txt.value=val } // --> </script> </head> <body onload="javascript:setVal('abc')"> <form name="test_form1"> <input type="hidden" name="btn" value=""> <input type="text" name="txt" value=""> </form> </body> </html>
その他の回答 (3)
- yhasegawa55
- ベストアンサー率0% (0/4)
オブジェクトを上手く指せているか?簡単に確認できるのは、 <input type="hidden" name="btn" value="test">として JSのfunction中で alert(document.form.btn.value); で表示してみては?
お礼
書き込みありがとうございました! Eclipseのデバッガ使って見てみたらNullが入ってました。 ちゃんといれてるはずなのになんでー?!ってパニくったのですが、無事解決できました。 ありがとうございました!
- usa_usako
- ベストアンサー率40% (14/35)
HTML全体が見えないのでよくわかりませんが、HTMLの中に name="btn"のオブジェクトは複数ありませんか? その場合、 document.forms[0].btn[0].value=funcitonの引数; としてみてください。
お礼
書き込みありがとうございます! 余計な記号(?)とかつけていたみたいで、No1さんのソースを参考にやってみたらうまくできました。 ありがとうございました!
- mrt136
- ベストアンサー率35% (33/92)
No.1の方の言うとおりだと思います。 後、参考URLにマイクロソフトが出している無償のスクリプトデバッガを紹介します。 #私は結構これで助かりました。。最近はあまり使っていませんが。。 こちらで、ブレークポイントを置いてオブジェクトの内容を確認する事が出来ます。 一度試してみてはどうでしょうか?
お礼
書き込みありがとうございました! デバッガの紹介ありがとうございます。 とりあえずデバッガを使わずに解決できましたが、また壁にぶち当たったら使わせていただきます! 本当にありがとうございました。
お礼
ありがとうございました! 無事解決できました。 rotesKometさんのソースと自分のソースを見比べて直していったらできました。 こんな私に付き合ってくださって本当にありがとうございました!!