Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.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_Drop Down Menu_Radio - Fatal编程技术网

当单选按钮已设置为“是”时,javascript将在更改下拉菜单时显示隐藏的div

当单选按钮已设置为“是”时,javascript将在更改下拉菜单时显示隐藏的div,javascript,drop-down-menu,radio,Javascript,Drop Down Menu,Radio,嗨,我有一个带有不同选择的下拉列表当我选择第二个选项时,有一组是/否单选按钮,一旦我选择是,我显示隐藏字段的div,然后当我更改下拉列表的值时,我隐藏这些字段。问题是,当我回到下拉列表中的第二个选择时,“是”单选按钮已被选中,但隐藏字段不会像第一次那样显示,除非我单击“是”单选按钮。当单选按钮已为“是”时,如何使隐藏字段显示 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8">

嗨,我有一个带有不同选择的下拉列表当我选择第二个选项时,有一组是/否单选按钮,一旦我选择是,我显示隐藏字段的div,然后当我更改下拉列表的值时,我隐藏这些字段。问题是,当我回到下拉列表中的第二个选择时,“是”单选按钮已被选中,但隐藏字段不会像第一次那样显示,除非我单击“是”单选按钮。当单选按钮已为“是”时,如何使隐藏字段显示

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#tea").hide();
  $("#milk").hide();
                $("#coffee").hide();
$("#teano").hide();
                $("#teayes").hide();
$("#testradio").hide();


$('#q1').click(function() {
if ($(this).val() === 'y') {
  $("#testradio").show();
} else if ($(this).val() === 'n') {
  $("#testradio").hide();
} 
});



    $("select").change(function(){
        $( "select option:selected").each(function(){
            if($(this).attr("value")=="1"){
                $("#tea").hide();
  $("#milk").show();
   $("#testradio").hide();
                $("#coffee").hide();
            }
            if($(this).attr("value")=="2"){
               $("#tea").show();
   $("#testradio").hide();
  $("#milk").hide();
                $("#coffee").hide();
            }
            if($(this).attr("value")=="3"){
                $("#tea").hide();
  $("#milk").hide();
                $("#coffee").show();
  $("#testradio").hide();
            }
        });
    }).change();
  });
  </script>
   </head>
 <body>
   <div>
    <select>
        <option>Choose beverage</option> 
        <option value="1">milk</option>
        <option value="2">tea</option>
        <option value="3">coffee</option>
    </select>
</div>
<div id="milk">

 milk choices go here</div>
<div id="tea">
 caffeine
<INPUT TYPE="radio" NAME="q1" id="q1" VALUE="y">Yes
  <INPUT TYPE="radio" NAME="q1" id="q1" VALUE="n">No
 </div>
 <div id="teayes">
 tea yes
 </div>

  <div id="testradio">
 test radio button show
</div>

<div id="teano">
 tea no
</div>
<div id="coffee">
coffee goes here</div>
</body>
 </html>  

$(文档).ready(函数(){
$(“茶”).hide();
$(“#牛奶”).hide();
$(“#咖啡”).hide();
$(“#teano”).hide();
$(“#teayes”).hide();
$(“#testradio”).hide();
$('#q1')。单击(函数(){
if($(this.val()='y'){
$(“#testradio”).show();
}else if($(this).val()='n'){
$(“#testradio”).hide();
} 
});
$(“选择”).change(函数(){
$(“选择选项:选定”)。每个(函数(){
如果($(this.attr(“值”)=“1”){
$(“茶”).hide();
$(“#牛奶”).show();
$(“#testradio”).hide();
$(“#咖啡”).hide();
}
如果($(this.attr(“值”)=“2”){
$(“茶”).show();
$(“#testradio”).hide();
$(“#牛奶”).hide();
$(“#咖啡”).hide();
}
如果($(此).attr(“值”)=“3”){
$(“茶”).hide();
$(“#牛奶”).hide();
$(“#咖啡”).show();
$(“#testradio”).hide();
}
});
}).change();
});
选择饮料
牛奶
茶
咖啡
这里有牛奶可供选择
咖啡因
对
不
茶是的
测试单选按钮显示
茶不
这里有咖啡
快速解决方案:

$('select[name="teas"]').on('change', function (e) {...}).trigger('change');
触发它就行了

$('select[name="teas"]').on('change', function (e) {}).change();

你也可以显示html吗?嗨,甘,我更新了我的代码,加入了html,这也显示了我在更改下拉菜单时遇到的问题,就像你比我快了几秒钟一样-pluso uno for you:)