当前位置 : 主页 > 网页制作 > JQuery >

jQuery:从变量名或$(this)检查值

来源:互联网 收集:自由互联 发布时间:2021-06-15
如果我有一些单选按钮: input type="radio" name="test" value="apple" Applebr/input type="radio" name="test" value="banana" CHECKED Bananabr/input type="radio" name="test" value="carrot" Carrotbr/ 然后我用jQuery定义了无线电
如果我有一些单选按钮:

<input type="radio" name="test" value="apple"> Apple<br/>
<input type="radio" name="test" value="banana" CHECKED> Banana<br/>
<input type="radio" name="test" value="carrot"> Carrot<br/>

然后我用jQuery定义了无线电组

var test = $('input:radio[name="test"]')

如何在不重写的情况下基于变量test获取checked元素的值

var test_val = $('input:radio[name="test"]:checked').val();

我试过了两个

$(test):checked.val();
test:checked.val();

作为变更函数的一部分,我也试过这个:

$(test).change(function() {
    if ($(this):checked.val() == 'no') {
        $('#featured').stop().fadeOut();
    } else if ($(this):checked.val() == 'yes') {
        $('#featured').stop().fadeIn();
    }
});

只是想知道这是否可行,或者我是否必须重新写出完整的输入选择器来获取值.

附:
如果IE8不支持:checked选择器,我可以使用什么?

你可以使用.filter() help:

test.filter('input:checked')

.filter()也支持回调:

test.filter(function() {
    return this.name === 'test' && this.checked
});

我不知道:checked选中器不适用于IE8.如果这是真的,后一个例子应该工作(直接访问节点expando)

网友评论