我有一些HTML與複選框(使用單選按鈕是不方便的,因爲生成HTML的庫 - 添加細節,我需要在圖書館外自己破解一個或找到一個非常規的方式來使圖書館爲我工作)。如何確保只有一個複選框保持檢出狀態?
我需要模擬單選按鈕的功能,特別是 - 當從多個框中檢查單個框時,應該取消選中所有其他框。
我想取消選中所有框,然後檢查我點擊的那個。我的jQuery/JS失敗。你能幫我嗎?
$(function() {
//check first box
$("input.duty:first").attr("checked", "true");
//clicking unchecked box should check that box
//unchecks all others
$(".duty").on('click', function(event) {
$("input.duty").attr("checked", "false");
$(this).prop("checked", true);
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="casePointsFieldset">
<fieldset class="casePointFieldset">
<div>
<label><span>Duty:</span>
<input type="checkbox" name="casePoints[0][isDutyPoint]" class="duty" value="0"></label>
</div>
</fieldset>
<fieldset class="casePointFieldset">
<div>
<label><span>Duty:</span>
<input type="checkbox" name="casePoints[1][isDutyPoint]" class="duty" value="0"></label>
</div>
</fieldset>
<fieldset class="casePointFieldset">
<div>
<label><span>Duty:</span>
<input type="checkbox" name="casePoints[2][isDutyPoint]" class="duty" value="0"></label>
</div>
</fieldset>
</div>
只是僅供參考,您無法用此邏輯取消選中複選框。如果他們想要模仿單選按鈕行爲 –
,這可能適合OP,那麼它適合我,我無法取消選擇它。 – Dennis