[英]jQuery checkbox disable/enable secondary inputs based on checkbox value
我有一個表單(它是一個WordPress插件,Contact 7,fyi),它使用一個獨有的復選框。 有兩個復選框選項,是和否。 如果他們檢查是,我有一個我正在啟用的文本字段(我默認禁用它)。 如果他們檢查不是,我有一個第二個獨占復選框,有2個盒子,我正在啟用(默認情況下)。 你可以猜測,當用戶選擇是時,它也應該禁用第二個復選框。 如果他們選擇否,我希望文本字段返回到禁用狀態。
所以我有這個工作,除了,它不承認變化事件; 換句話說,如果我檢查是,它啟用文本字段,但如果我然后檢查否,它不會更新其他輸入元素的關聯狀態。 我必須取消選中no,然后重新檢查它,以便它執行該功能。 這是我的jQuery代碼片段:
$(document).ready(function() {
$('p#myTextFieldHolder input:text').val('').attr('disabled', true);
$('#mySecondCheckBoxHolder input:checkbox').attr('disabled', true);
$("#myCheckBoxHolder input").change(function() {
if ($(":checked").val() == "If yes, what is the estimated closing date?") {
$('p#myTextFieldHolder input:text').val('').attr('disabled', false);
$('#mySecondCheckBoxHolder input:checkbox').attr('disabled', true);
} else if ($(":checked").val() == "No:") {
$('p#myTextFieldHolder input:text').val('').attr('disabled', true);
$('#mySecondCheckBoxHolder input:checkbox').attr('disabled', false);
} else {
$('p#myTextFieldHolder input:text').val('').attr('disabled', true);
$('#mySecondCheckBoxHolder input:checkbox').attr('disabled', true);
}
})
});
有關如何解釋並糾正它的任何建議? 謝謝。
$(function(){
$('#chkboxes input:checkbox').on('change', function(){
if($(this).is(':checked'))
{
if($(this).attr('id')=='yes')
{
$('#txt1').prop('disabled', false);
$('#chkno input:checkbox').prop('disabled', true).prop('checked', false);
$('#no').prop('checked', false);
}
else
{
$('#txt1').val('').prop('disabled', true);
$('#chkno input:checkbox').prop('disabled', false);
$('#yes').prop('checked', false);
}
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.