-1

こんにちは、ラジオボタンをクリックすると常にチェックされます。ラジオボタンのチェックを外せないので、クリック時にラジオボタンをチェック/チェック解除する方法を試してください。このリンク。

問題

一度だけチェックできます。一度チェックを外すと、常にチェックを外しても正しく機能しません。

  <input value='' type='radio' id='one' onClick="getCurrentLocation()"/>

   $('input[type=radio]').click(function(){

    if (this.previous) {
        this.checked = false;
    }
    this.previous = this.checked;
});
4

4 に答える 4

1

最も簡単な方法は、同じnameプロパティを使用することinputです。

例:

<input name="myname" value='' type='radio' id='one' onClick="getCurrentLocation()"/>
<input name="myname" value='' type='radio' id='two' onClick="getCurrentLocation()"/>

デモ

一度に1つのチェックが必要なので、チェックボックスを使用することをお勧めします。

<input name="myname" value='' type='checkbox' id='one' onClick="getCurrentLocation()"/>
<input name="myname" value='' type='checkbox' id='two' onClick="getCurrentLocation()"/>
于 2012-05-26T07:10:55.450 に答える
1

それはあなたの唯一のラジオボタンですか?

ラジオボタンは、セットから可能な状態の1つを維持するために開発されました。

したがって、ラジオボタンが1つしかない場合は、チェックボックスで変更します。

それらがいくつかある場合は、現在選択されているチェックを外すためにデフォルトのものを選択してください。 しかし、セットから別のラジオをクリックすると、特別なコードを必要とせずにチェックされます。

(私が覚えている限り、ブラウザのラジオボタンをマウスクリックでオフにする方法はなかったので、スクリプトからもそのような動作は期待できません)

チェックボックスの場合、クリック時にチェックを外すための特別なコードは必要ありません。これは、すべてのブラウザでのデフォルトの動作です。

デザインの質問だけの場合は、空のチェックされたラジオボタンのIMGを使用して、onClickで画像を変更できます。この場合、非表示の入力フィールドに状態を保持できます。

しかし、それはあなたのユーザーにとって混乱するでしょう...

于 2012-05-26T07:14:39.470 に答える
0

それが彼らの働きです。ラジオボタンは、グループ内のユーザーである必要があり、グループから選択できます。切り替えることができる単一のボタンが必要な場合は、チェックボックスを使用します。

ラジオボタンを使用してチェックボックスを模倣しようとすると、ユーザーを混乱させるだけです。

于 2012-05-26T07:13:14.963 に答える
0

これを試して、

マークアップ:

<input value='' type='radio' id='one' onClick="getCurrentLocation()"/>

jQuery、

var flag = 0;
$('input[type=radio]').click(function(){
    if(flag === 0)
    {
      $(this).prop('checked', true);              
      flag = 1;
    }
    else if(flag == 1)
    {
      $(this).prop('checked', false);
      flag = 0;        
    }

});

</ p>

を使用していて、idラジオボタンが1つしかないため、直接呼び出す必要はありません。this

ただし、他の人と同じように使用することをお勧めしますcheckbox

デモ

于 2012-05-26T07:54:48.140 に答える