- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フォームの内容をクッキーに保存+項目の非表示)
フォームの内容をクッキーに保存+項目の非表示
このQ&Aのポイント
- 占いのページ作成時に、生まれ月の選択プルダウンを用意し、1月のみ結果を表示し、他の月は非表示にしたい。また、前回選択した生まれ月をクッキーに保存し、毎回選択させる手間を省きたい。
- フォームの内容をクッキーに保存するためには、JavaScriptを使用する方法がある。また、項目の表示や非表示を切り替えるには、別のJavaScriptスクリプトを使用することができる。
- 上記の2つの参考URLを使ってフォームを作成したが、一部表示されてしまう問題がある。組み合わせて解決する方法は限られているため、他の方法を教えてほしい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
bodyにも貼ってあったのですね。 途中までしか見てなかったです。 <body onLoad=・・・> の onLoad="~" を消して、 window.onload=function(){ ~ } の ~に追記してみてください。 <body onload="~"> と同じ働きをします。 ブラウザが htmlをすべて読み込んだら onload 内の ユーザー関数を 自動的に読み込ませるとの事です。 おそらく、javascriptで onload=entryChange(); body の属性で onLoad=" restoreValue(document.form1);"を指定していたので ちぐはぐになってると思われます。 先にクッキー情報を取得してから、entryChange()内を動かせば動くと思います。 entryChange、restoreValueは ユーザー関数なので 読み込ませば機能します。 少し書き直してみて試してみてください。 ↓下記のようになります↓ window.onload = function(){ restoreValue(document.form1); entryChange(); } </script> </head> <body> ~
その他の回答 (1)
- noris02
- ベストアンサー率74% (56/75)
回答No.1
window.onload = entryChange; を、 window.onload = entryChange(); に 変更で どーでしょうか
質問者
お礼
ありがとうございます。 さっそくやってみましたが、やはり1月以外の項目が表示されてしまいました・・・
お礼
早速ためしたら希望通りのものが出来上がりました! body属性でそういうことになっていたのですね。 勉強になりました。 ありがとうございました。