Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的隐藏div会自动出现?_Javascript_Html_Checkbox_Hidden - Fatal编程技术网

Javascript 为什么我的隐藏div会自动出现?

Javascript 为什么我的隐藏div会自动出现?,javascript,html,checkbox,hidden,Javascript,Html,Checkbox,Hidden,我有两个名为hidden_div和hidden_divX的隐藏div。目标是在单击相应的复选框时显示每个复选框。我有两个独立的功能。两者几乎完全相同。第一个隐藏div工作正常。第二个自动出现。有什么想法或建议吗 JS: 以下是我当前的html: <div id="ticket_hidden" style="text-align: center; clear:both;"> <div id="visible_div" style="float: left;">

我有两个名为hidden_div和hidden_divX的隐藏div。目标是在单击相应的复选框时显示每个复选框。我有两个独立的功能。两者几乎完全相同。第一个隐藏div工作正常。第二个自动出现。有什么想法或建议吗

JS:

以下是我当前的html:

<div id="ticket_hidden" style="text-align: center; clear:both;">
    <div id="visible_div" style="float: left;">
        <input type="checkbox" name="escalated" value="Yes" onclick="doInput(this)" tabindex="18">Escalate&nbsp;&nbsp;&nbsp;
    </div>
    <div id="hidden_div" style="float: left;">
        <input type="text" id="escalated_to" name="escalated_to" maxlength="100" style="width:200px; height:18px;" tabindex="19" placeholder="Escalated To">
    </div>
    <br />
    <div id="visible_divX" style="float: left;">
        <input type="checkbox" name="escalated" value="Yes" onclick="doInputs(this)" tabindex="20">Send Email&nbsp;&nbsp;&nbsp;
    </div>
    <div id="hidden_divX" style="float: left;">
        <input type="text" id="escalated_to" name="escalated_to" maxlength="100" style="width:200px; height:18px;" tabindex="21" placeholder="Email To">
    </div>
</div>

逐步升级

发送电子邮件
在每个复选框中添加一个类(比如checkbox1和checkbox2),并以下面的方式处理事件,而不是使用onclick。。例如,处理第一个复选框单击

   $('.checkbox1').change(function() {
        if (this.checked) {
            $('#hidden_div').fadeIn('fast');
            //Add more logic
        }
        else
        {
            //more logic
        }
    });

您应该从
obj
获取选中的值,因为您正在从
doInputs(this)
传入
this


jsFiddle:

您能为问题添加html吗?@dumass为每个请求添加了html
   $('.checkbox1').change(function() {
        if (this.checked) {
            $('#hidden_div').fadeIn('fast');
            //Add more logic
        }
        else
        {
            //more logic
        }
    });
function doInput(obj) {
    if ($(obj).is(':checked')) {
        $('#hidden_div').fadeIn('fast');
    } else {
        $('#hidden_div').fadeOut('fast');
    }
}

function doInputs(obj) {
    if ($(obj).is(':checked')) {
        $('#hidden_divX').fadeIn('fast');
    } else {
        $('#hidden_divX').fadeOut('fast');
    }
}