0

このフィドルをチェックしてください:http://jsfiddle.net/5rmEe/

目標は、チェックされている場合はユーザーがクリックしたときにラジオボタンのチェックを外し、チェックされていない場合はチェックすることです

しかし、クリックイベントが2回トリガーされ、チェック/チェック解除が非常にバグになっているようです....

を組み合わせてみました

e.stopPropagation();
e.preventDefault();

コマンドですが、それぞれが異なるバグを引き起こします...

この目標を達成し、それに応じてそのコードを修正するにはどうすればよいですか?

4

3 に答える 3

3

チェックボックスの方が良いという意見には同意します。

ただし、そうは言っても、ここにあなたのために働くかもしれないものがあります. まず、チェック済みのラジオ ボタンにある属性は、チェック済みのマークを付けます。したがって、チェックを削除するには、属性を削除する必要があります。ただし、ラジオボタンをクリックすると、属性を元に戻したいと考えています。

私の解決策は、実際にはハックです。別の属性を追加し、それをフラグとして使用して、checked 属性を削除するか追加するかを決定します。HTH

$('input[type=radio]').each(function(){
  var input = $(this);
  input.click(function(e){
      if(input.attr('cval')==='1'){
          input.attr('cval', '0');
          input.removeAttr('checked');
      }
      else{
          input.attr('cval', '1');
          input.attr('checked', 'checked');
      }
  });
});​
于 2012-10-24T20:19:31.430 に答える
1

チェックボックスをラジオボタンのようにスタイルしてみませんか。そうすれば、両方を最大限に活用できます。意図したとおりにチェックボックスを使用していますが、上司はまだ手がかりがありません;)

http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/

この概念を探し始めると、たくさんの例があります。ここでは反対のことを行いたいと思うでしょうが、例は同じです。

HTMLラジオボタンをチェックボックスのようにスタイルできますか?

于 2012-10-24T20:23:35.233 に答える
0

チェックボックスが必要です-それがその目的です。標準コントロールがどのように動作するかについてのユーザーの期待をいじるのは、悪い考えです。

于 2012-10-24T20:12:20.673 に答える