• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryを使ってスタイルの変更)

jQueryを使ってスタイルの変更

このQ&Aのポイント
  • jQueryを使用して、名前と季節の選択肢が選択された場合に、背景色を白に変更する方法を教えてください。
  • HTMLの名前と季節の選択肢に対して、jQueryを使用して背景色を白に変更する方法について教えてください。
  • jQueryを使って、名前と季節の選択肢が選択された場合に、背景を白くする方法を教えてください。

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

  • ベストアンサー
noname#137826
noname#137826
回答No.1

これでどうでしょう? --- <html> <head> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> <script type="text/javascript"> $(function(){ $('ul').css('background-color', '#f00'); $('input').bind('click',function(){ var ul = $(this).parents('ul'); if (ul.find('input:checked').length) { ul.css('background-color', '#fff'); } else { ul.css('background-color', '#f00'); } }); }); </script> <style> * { margin: 0; padding: 0; } ul { margin-top: 1em; margin-bottom: 3em; list-style-type: none; } </style> </head> <body> □名前 <ul> <li><label><input type="checkbox" value="1">一郎</label></li> <li><label><input type="checkbox" value="2">二郎</label></li> <li><label><input type="checkbox" value="3">三郎</label></li> </ul> □季節 <ul> <li><label><input type="checkbox" value="1">春</label></li> <li><label><input type="checkbox" value="2">夏</label></li> <li><label><input type="checkbox" value="2">秋</label></li> <li><label><input type="checkbox" value="2">冬</label></li> </ul> </body> </html>

kyouju
質問者

補足

kaorineさんありがとうございます。 まだjQueryを始めたばかりなのでとっても勉強になります。 F5ボタンを押してもそのままの状態を保つためにはどのような記述をすればよいでしょうか。 難しいです・・・

その他の回答 (1)

noname#137826
noname#137826
回答No.2

クッキーを使ってチェックボックスの状態を保存することでしょうか。 jQuery.cookie.js を使います。(参考URL) --- <html> <head> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> <script type="text/javascript" src="jquery.cookie.js"></script> <script type="text/javascript"> $(function(){ var colors = { checked : '#fff', unchecked : '#f00' } $('ul').css('background-color', colors.unchecked); $('input').each(function(){ if ($.cookie(this.id) == 'true') { this.checked = 'checked'; $(this).parents('ul').css('background-color', colors.checked); } }); $('input').bind('click',function(){ $.cookie(this.id, this.checked); var ul = $(this).parents('ul'); if (ul.find('input:checked').length) { ul.css('background-color', colors.checked); } else { ul.css('background-color', colors.unchecked); } }); }); </script> <style> * { margin: 0; padding: 0; } ul { margin-top: 1em; margin-bottom: 3em; list-style-type: none; } </style> </head> <body> □名前 <ul> <li><label for="ichiro"><input type="checkbox" value="1" id="ichiro"/>一郎</label></li> <li><label for="jiro"><input type="checkbox" value="2" id="jiro"/>二郎</label></li> <li><label for="saburo"><input type="checkbox" value="3" id="saburo"/>三郎</label></li> </ul> □季節 <ul> <li><label for="haru"><input type="checkbox" value="1" id="haru"/>春</label></li> <li><label for="natsu"><input type="checkbox" value="2" id="natsu"/>夏</label></li> <li><label for="aki"><input type="checkbox" value="2" id="aki"/>秋</label></li> <li><label for="huyu"><input type="checkbox" value="2" id="huyu"/>冬</label></li> </ul> </body> </html>

参考URL:
http://plugins.jquery.com/project/cookie

関連するQ&A