根据复选框显示文本框

时间:2014-09-14 17:01:21

标签: javascript php jquery html checkbox

我有一个问题,我有2个复选框,如果复选框的值为Y,我想显示一个文本框,我的代码:

<label>Admin:</label>
                <div class="onoffswitch">
                    <input type="checkbox" name="is_admin" class="onoffswitch-checkbox" value="Y" id="is_admin">
                    <label class="onoffswitch-label" for="is_admin">
                        <span class="onoffswitch-inner"></span>
                        <span class="onoffswitch-switch"></span>
                    </label>
                </div>
                <label>Verificator:</label>
                <div class="onoffswitch">
                    <input type="checkbox" name="is_verificator" class="onoffswitch-checkbox" value="Y" id="is_verificator">
                    <label class="onoffswitch-label" for="is_verificator">
                        <span class="onoffswitch-inner"></span>
                        <span class="onoffswitch-switch"></span>
                    </label>
                </div>
                <input type="text" style="display:none;" placeholder="" id="if_checked"/><br/>

我的jquery:

<script>
$("input[name=is_verificator]").change(function(){

    if($(this).val() == "Y")
    {
        $("#if_checked").show();
    }else{
        $("#if_checked").hide();
    }
});

2 个答案:

答案 0 :(得分:1)

将jquery代码包装在$(document).ready(function(){})中,如下所示:

<script>
$(document).ready(function(){
   $("input[name=is_verificator]").change(function(){
     if($(this).val() == "Y" && $(this).is(":checked"))  //changed this condition as per OP comment
     {
       $("#if_checked").show();
     }else{
       $("#if_checked").hide();
     }
  });
});
</script>

答案 1 :(得分:0)

您正在寻找.is(":checked")功能。

$(':checkbox[name="is_verificator"]').change(function(){
    if($(this).is(":checked"))
    {
        $("#if_checked").show();
    }else{
        $("#if_checked").hide();
    }
});