-1

html

<input type="checkbox" name="bar" value="1" id="id_bar" />
<label for="id_bar">Bar</label>

静的ファイル

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.0.min.js"><\/script>')</script>
<script type="text/javascript" src="/static/js/vendor/jquery-ui-1.8.23.custom.min.js"></script>
<link rel="stylesheet" href="/static/css/overcast/jquery-ui-1.8.23.custom.css" />

脚本

$(document).ready(function(){
    var checkboxes = $('input[type=checkbox]');
    try{
        $(checkboxes).button();     
    }
    catch(e)
    {
        alert(e);
    }
});

疑問に思う

エラーは発生していません。スクリプトは正常に実行されていますが、コマンドを実行した後でも、チェックボックスに変更はありません。助けてください。

4

5 に答える 5

1

ボタンではなくボタンセットを探しています

jquery ui docsから: ラジオとチェックボックスを使用する buttonset()

  $(document).ready(function() {
    $("#radio").buttonset();
  })
于 2012-09-13T18:52:03.450 に答える
0

代わりにこれを試してください:

$(document).ready(function(){
   var checkboxes = $('input[type=checkbox]');
   try{
       checkboxes.button();      
   }
   catch(e)
   {
      alert(e);
   }
});

または交互に

$(document).ready(function(){
   try{
       $('input[type=checkbox]').each(function(index){
           $(this).button();   
       });     
   }
   catch(e)
   {
      alert(e);
   }
});
于 2012-09-13T18:51:39.353 に答える
0

これらを試しましたか?

var checkboxes = $('input[type="checkbox"]');

checkboxes.button();

更新 または

checkboxes.buttonset();

更新 2

<form>
    <div id="radio">
        <input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label>
        <input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label>
        <input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label>
    </div>
</form>

その後

<script>
    $(function() {
        $( "#radio" ).buttonset();
    });
</script>
于 2012-09-13T18:52:43.153 に答える
0

これが言い過ぎであることは承知していますが、Jquery UI は、ボタンやフォームのスタイル設定に関しては使いにくいものです。

シンプルなクラス スタイルを使用しているため、http://twitter.github.com/bootstrap/をお勧めします。

質問への回答に戻ります。
var チェックボックスは通常、複数のチェックボックスがあることを意味します。だから多分.each()を使う?

$('input[type=checkbox]').each(function(index, value) {
  $(this).click();
});

$(this).is(':checked') を使用して、必要に応じてチェックボックスがオンになっているかどうかを確認できます。

于 2012-09-13T18:53:17.900 に答える
0

やってみました:

$(checkboxes).click(); 
于 2012-09-13T18:48:47.187 に答える