ラジオボタンがjQueryを使ってチェックされているかどうかを調べますか?
質問
私は細かいチェックするにラジオボタンを設定することができますが、私は何をしたいのセットアップは、特定のラジオボタンがチェックされたときにアクティブに「リスナー」の一種です。
を取り、例えば次のコード:の
$("#element").click(function()
{
$('#radio_button').attr("checked", "checked");
});
これは、checked属性を追加し、すべてが順調ですが、私はについてどのように行くだろう アラートを追加します。ラジオボタンがチェックされている場合たとえば、それがポップアップ クリック機能の助けなし?
解決
$('#element').click(function() {
if($('#radio_button').is(':checked')) { alert("it's checked"); }
});
他のヒント
を使用すると、ラジオボタンのグループを持っている場合は、同じ名前の属性と提出時またはこれらのいずれかのラジオボタンをチェックした場合、あなたは、単に次のコードでこれを行うことができます確認したいいくつかのイベントを共有します
$(document).ready(function(){
$('#submit_button').click(function() {
if (!$("input[name='name']:checked").val()) {
alert('Nothing is checked!');
return false;
}
else {
alert('One of the radio buttons is checked!');
}
});
});
ソースの
は、ここに私のソリューションです(組み合わせデビッドHedlundさんとParagさん):
if (!$("input[name='name']").is(':checked')) {
alert('Nothing is checked!');
}
else {
alert('One of the radio buttons is checked!');
}
これは私のためにうまく働いた!
あなたは、変更イベントがIEで動作しないよう、チェックボックスのクリックイベントをバインドする必要があると思います。
$('#radio_button').click(function(){
// if ($(this).is(':checked')) alert('is checked');
alert('check-checky-check was changed');
});
あなたは、プログラムの状態を変更したときにさて、あなたはまた、このイベントをトリガする必要があります:
$('#radio_button').attr("checked", "checked");
$('#radio_button').click();
//クラスを介して確認してください。
if($("input:radio[class='className']").is(":checked")) {
//write your code
}
//名前によってチェック
if($("input:radio[name='Name']").is(":checked")) {
//write your code
}
//データを通じて確認してください。
if($("input:radio[data-name='value']").is(":checked")) {
//write your code
}
別の方法は、 prop
のの(jQueryの> = 1.6)を使用することです:
$("input[type=radio]").click(function () {
if($(this).prop("checked")) { alert("checked!"); }
});
ソリューションは、シンプルになります。それを実行します -
if($('#yourRadioButtonId').is(':checked')){
// Do your listener's stuff here.
}
あなたはクリック機能を使用しない場合
jQueryの変更機能を使用します$('#radio_button :checked').live('change',function(){
alert('Something is checked.');
});
これは、あなたが探している答えをする必要があります。 あなたは1.9.1上でjQueryのバージョンを使用している場合、 ライブ機能が廃止されていたように使用してみます。
...みんなありがとう...私は必要なすべてのだったセット内の各ラジオボタンが異なるIDを持っていた確認し、ラジオボタンの「価値」...
var user_cat = $("input[name='user_cat']:checked").val();
私の作品...
のラジオボタンとブラウザのすべてのタイプでの作業の
if($('#radio_button_id')[0].checked) {
alert("radiobutton checked")
}
else{
alert("not checked");
}
ここのワーキングJsfiddle
ダイナミックに生成ラジオボタン・チェック・ラジオGET値
$("input:radio[name=radiobuttonname:checked").val();
の変化動的ラジオボタンを
$('input[name^="radioname"]').change(function () {if (this.value == 2) { }else{}});
$(「ラジオボタンクラス名。 『)である私のために動作しませんでした(』確認」)が、次のコードはうまく働いた:ます。
if(typeof $('.radio-button-class-name:checked').val() !== 'undefined'){
// radio button is checked
}
これを試します
if($('input[name="radiobutton"]:checked').length == 0) {
alert("Radio buttons are not checked");
}
これを試してください:
alert($('#radiobutton')[0].checked)
jQueryのはまだ普及しているが、あなたは何の依存関係を持たないようにしたい場合は、以下を参照してください。 ショート&クリア機能ラジオボタンがES-2015にチェックされているかどうかを確認するには:
function getValueFromRadioButton( name ){
return [...document.getElementsByName(name)]
.reduce( (rez, btn) => (btn.checked ? btn.value : rez), null)
}
console.log( getValueFromRadioButton('payment') );
<div>
<input type="radio" name="payment" value="offline">
<input type="radio" name="payment" value="online">
<input type="radio" name="payment" value="part" checked>
<input type="radio" name="payment" value="free">
</div>
$("#radio_1").prop("checked", true);
1.6の前のjQueryのバージョンの使用
$("#radio_1").attr('checked', 'checked');