簡體   English   中英

如何以編程方式取消選中已選中的復選框?

[英]How can I uncheck a checked checkbox programmatically?

說我有以下樣本:

<input name="Opt1" id="Opt1" type="checkbox" value="1" alt="1948" title="RQlevel1" src="2" checked="checked" onclick="levels();"/>  <label style="cursor:pointer" for="OptID12851948">PADI Advanced Open Water</label>

<input name="Opt2" id="Opt2" type="checkbox" value="2" alt="1953" title="RQlevel2" src=""  onclick="levels();"/>  <label style="cursor:pointer" for="OptID19521953">PADI Rescue</label>

<input name="Opt3" id="Opt3" type="checkbox" value="3" alt="1957" title="RQlevel2" src=""  onclick="levels();"/>  <label style="cursor:pointer" for="OptID19521953">PADI Rescue2</label>

如果我單擊PADI Advanced Open Water復選框,然后調用levels()JavaScript函數,如何使用jQuery以編程方式取消選中此復選框?

我嘗試了以下但不起作用:

if ($("input[value='1']:checked").attr("checked")){
    $("input[value='1']:checked").attr(“checked”, false);
}   

使用removeAttr

$("input[value='1']:checked").removeAttr('checked');

或者使用最新版本的jQuery,您可以使用prop

$("input[value='1']:checked").prop('checked', false);

如果你使用jQuery 1.6及以上,你應該真的使用.prop()

此外,您的選擇器已確定已選中輸入。 沒有必要通過檢查屬性或屬性來復制它。

if ($("input[value='1']:checked").length) { 
    $("input[value='1']:checked").prop("checked", false); 
}    

但是,如果您使用的jQuery版本低於1.6,則可以使用removeAttr()。

if ($("input[value='1']:checked").length) { 
    $("input[value='1']:checked").removeAttr("checked"); 
}    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM