簡體   English   中英

jQuery復選框根據復選框值禁用/啟用輔助輸入

[英]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.

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