Jquery - 添加标签"已检查"在输入上

时间:2016-07-22 09:57:24

标签: jquery html

我有问题,我想添加"检查"当我点击输入但我不知道该怎么做时,这是我的jQuery代码:

jQuery('#myId div input').click(function(){
                                jQuery(this).attr('checked', 'checked');
                            });

这是我的HTML代码:

<form id="myId">
<div class="grid12-12">
<input type="radio" value="292" id="292" class="required-entry">
<label for="292">Ordonnance.jpg</label>
</div>
</form>

但问题是如果我这样做,就会发生这种情况,我的标签中有这个:

  

选中=&#34;选中&#34;

我只想&#34;检查&#34;在我的标签中像这样

<input type="radio" id="292" value="292" checked>

如果我像这样删除jQuery中的check:

jQuery('#myId div input').click(function(){
                                jQuery(this).attr('', 'checked');
                            });

我有一个错误。

那我该怎么办呢? 在此先感谢:)

3 个答案:

答案 0 :(得分:2)

使用prop代替attr,因为这是属性,而非属性。

$('#myId div input').click(function(){
    $(this).prop('checked', true);
});

但是你看到checked="checked"是正确的。这与使用disabled相同,它将变为disabled="disabled"。没问题。甚至有HTML版本禁止这种类型的属性最小化,例如XHTML。因此,这是使用checked="checked"的最佳方式。

答案 1 :(得分:0)

这就是你解决它的方法。

$( "#myId div input" ).prop( "checked", true ); $( "#myId div input" ).prop( "checked", false );

答案 2 :(得分:0)

您正在将一个空属性传递给元素,就像说

一样
<input type="radio" id="292" value="292" ="checked " />

所以你这样做

$(this).attr("checked", true);