15

jsFiddle在这里

我是 Javascript 的新手,无法按照iCheck页面上的文档进行操作。我已经按照此处似乎非常相关的 StackOverflow 问题的答案进行了操作,但无法获得弹出显示我选择的值的警报。谁能指出我正确的方向,好吗?

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);
  });
 });
4

7 回答 7

33

你必须像这样使用 iCheck

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

演示

文档

于 2013-09-10T14:03:27.180 回答
14

使用 jQuery 选择器获取检查值的另一种 hacky 方法:

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

但是可以在配置中更改检查值的 AFAIK 默认类。

顺便说一句,如果 iCheck 以非常简单的功能创建此类问题,我认为它不是一个好的选择。

于 2014-01-04T19:04:13.313 回答
7

我发现其他答案很有用。但是,它们依赖于 iCheck 的“ifClicked”。您可能不希望每次选择新的单选按钮时都会弹出该值,而是仅在用户点击调用警报和相应值的特定按钮时才弹出该值。

例如:

$(document).on('click', '.buttonClass', function(event) {
  return alert($('.radioClass:checked').val());
});
于 2013-12-19T20:37:23.873 回答
6

试试这个:- 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);
    });
});
于 2013-09-10T14:08:28.920 回答
1

这对我有用...试试看

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

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

于 2016-06-25T05:23:13.640 回答
0

对于单选按钮和当前版本的 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。

于 2020-03-25T20:05:09.087 回答
-1

试试这个代码:

$(".radio .checked input[type=radio]").val()
于 2016-05-18T10:25:26.447 回答