web-dev-qa-db-ja.com

iCheckライブラリ:選択したラジオボタンの値

jsFiddle ここ

私はJavaScriptの初心者であり、 iCheck ページにあるドキュメントの説明に問題があります。 StackOverflowの質問 here に非常に関連すると思われる質問への回答をたどりましたが、選択した値をポップアップ表示するアラートを取得できません。誰かが私を正しい方向に向けることができますか?

HTML

<p>Are you sure you want to have your details removed from our marketing list?</p>
<div id="unsubscribe_radio">
    <ul>
        <li>
            <input type="radio" name="iCheck" value="yes">
            <label>Yes</label>
        </li>
        <li>
            <input type="radio" name="iCheck" value="no">
            <label>No</label>
        </li>
    </ul>
</div>

Javascript

$(document).ready(function () {
  $('input').iCheck({
     radioClass: 'iradio_flat-orange'
  });
  $("input:radio[name=iCheck]").click(function () {
     var value = $(this).val();
     alert("You clicked " + value);
  });
 });
14

このようにiCheckを使用する必要があります

$(document).ready(function () {
    $('input[name="iCheck"]').on('ifClicked', function (event) {
        alert("You clicked " + this.value);
    });
    $('input').iCheck({
        radioClass: 'iradio_flat-orange'
    });
});

[〜#〜] demo [〜#〜]

ドキュメント

30
Anton

JQueryセレクターでチェックされた値を取得するためのもう1つのハックな方法:

$(".checked input[name=name-of-original-input]").val();

ただし、チェックされた値のAFAIKデフォルトクラスは、構成で変更できます。

ところで、非常に単純な機能でこのような問題が発生する場合、iCheckは良い選択ではないと思います。

14
simplylizz

他の回答が役立つと思いました。ただし、それらはiCheckの「ifClicked」に依存しています。新しいラジオボタンが選択されるたびに値がポップアップするのではなく、ユーザーがアラートと対応する値を要求する特定のボタンを押したときにのみ値がポップアップするようにしたい場合があります。

例えば:

$(document).on('click', '.buttonClass', function(event) {
  return alert($('.radioClass:checked').val());
});
6
Sean L

これを試してください:- http://jsfiddle.net/adiioo7/yhmu97qh/

JS:-

$(document).ready(function () {
    $('input').iCheck({
        radioClass: 'iradio_flat-orange'
    });

    $('input').on('ifClicked', function (event) {
        var value = $(this).val();
        alert("You clicked " + value);
    });
});
6
Aditya Singh

これは私のために働きます...それを試してください

HTML:_<input type="checkbox" id=checkbox" name="checkbox" />_

jQuery:$( "#checkbox" ).prop("checked");

1
Monzur

ラジオボタンとiCheckの現在のバージョン:

<div class="row">
    <div class="col-lg-1">
        <div class="form-group">
            <label>
                <input type="radio" name="my-radio" class="flat-green my-radio" value="true"> Yes
            </label>
        </div>
    </div>
    <div class="col-lg-1">
        <div class="form-group">
            <label>
                <input type="radio" name="my-radio" class="flat-red my-radio" value="false"> No
            </label>
        </div>
    </div>
</div>

JS:

var isChecked = $("input[name=my-radio]:checked").val();

オプションが選択されていない場合はundefinedを返し、選択されている場合はtrueまたはfalseを返します。

0
RenanStr