如何知道当前元素是否被选中

时间:2012-09-14 09:55:31

标签: jquery

想法是浏览所有输入字段,当$(this)具有无线电类型时,检查它是否已被选中,是否保存其值。

我知道还有其他方法可以获得所选单选按钮的值,但我已经完成了所有输入并做了类似的事情。

我试图检查选中的属性,$(this).attr('selected')没有任何运气......我不知道该怎么做。

由于

7 个答案:

答案 0 :(得分:4)

您可以尝试以下方法:

$(this).is(':radio:checked');

答案 1 :(得分:2)

对于单选按钮,您应该使用checked

$(this).prop('checked')

答案 2 :(得分:1)

要检查选择单选按钮的使用:

.prop('checked');

$('input').each(function() {
   if( this.type == 'radio' ) {
     console.log( $(this).prop('checked') );  // or, this.checked
                                              // or, $(this).is(':checked')
   }
});

答案 3 :(得分:1)

这里我已经为上面的查询完成了完整的垃圾箱。请查看下面给出的演示链接:

演示: http://codebins.com/bin/4ldqp76

<强> HTML

<div id="panel">
  <input type="button" id="btn1" value="Check Selected" />
  <p>
    <input type="checkbox" value="Checkbox 1"/>
    Checkbox1 
    <br/>
    <input type="checkbox" value="Checkbox 2"/>
    Checkbox2 
    <br/>
    <input type="checkbox" value="Checkbox 3"/>
    Checkbox3 
    <br/>
    <input type="checkbox" value="Checkbox 4"/>
    Checkbox4 
    <br/>
    <input type="checkbox" value="Checkbox 5"/>
    Checkbox5 
  </p>
  <p>
    <input type="radio" name="rd" value="Radio 1"/>
    Radio-1 
    <br/>
    <input type="radio" name="rd" value="Radio 2"/>
    Radio-2 
    <br/>
    <input type="radio" name="rd" value="Radio 3"/>
    Radio-3 
    <br/>
    <input type="radio" name="rd" value="Radio 4"/>
    Radio-4 
    <br/>
    <input type="radio" name="rd" value="Radio 5"/>
    Radio-5 
  </p>
</div>

<强>的jQuery

$(function() {
    $("#btn1").click(function() {
        var SelChk = "Selected Checkbox Values: ";
        var SelRad = "Selected Radio Value:";

        $("input").each(function() {
            if ($(this).is(":checkbox:checked")) {
                SelChk += $(this).val().trim() + ", ";
            }
            if ($(this).is(":radio:checked")) {
                SelRad += $(this).val().trim();
            }
        });

        if (SelChk.substr(-2) == ", ") SelChk = SelChk.substr(0, SelChk.length - 2);

        alert(SelChk + "\n" + SelRad);
    });

});

演示: http://codebins.com/bin/4ldqp76

答案 4 :(得分:0)

尝试查看此处的示例http://api.jquery.com/checked-selector/

答案 5 :(得分:0)

HTML广播输入没有选择属性,但检查过,如所描述的here 另外,从jQuery 1.6开始,你应该使用.prop()来获取和设置那种布尔条件:$(this).prop(“checked”)将返回true或false。

答案 6 :(得分:0)

$("input[type='radio']).each(function(){
   if($(this).is(":checked")){
      // perform your operation
    }
});