Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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';s css至";显示:无“;_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 如果选择了某些选择选项,则更改div';s css至";显示:无“;

Javascript 如果选择了某些选择选项,则更改div';s css至";显示:无“;,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图根据用户选择的“性别”(即先生、太太、女士)更改表单输入。如果用户选择“mr”,我想改变表单,根据他的性别定制输入。要做到这一点,我需要一些问题消失 我的钱包在这里 HTML 先生 太太 夫人 JAVASCRIPT <script> if($('#prefix').val("mr")){ $("#disappear").css("display", "none"); }; </script> if($

我试图根据用户选择的“性别”(即先生、太太、女士)更改表单输入。如果用户选择“mr”,我想改变表单,根据他的性别定制输入。要做到这一点,我需要一些问题消失

我的钱包在这里

HTML


先生
太太
夫人
JAVASCRIPT

<script>
        if($('#prefix').val("mr")){
            $("#disappear").css("display", "none");
        };
</script>

if($('#前缀').val(“mr”)){
$(“#消失”).css(“显示”、“无”);
};

谢谢大家,非常感谢。

将您的代码更改为:

$(document).ready(function () {
    $('#prefix').on("change", function () {
        if ($(this).val()=="mr") {
            $("#disappear").css("display", "none");
        };
        else{
            $("#disappear").css("display", "block");
        }
    });
})

您需要将该代码包装到更改事件处理程序中

您还需要一个事件处理程序,例如

$('#prefix').on('change', function() {
    $("#disappear").toggle( this.value !== 'mr' );
});
使用
切换
根据值切换可见性


以上所有内容,下面是您的建议


如果您试图隐藏与所选前缀无关的所有问题,则可以尝试此方法

为每个问题的
div
包装使用类,一个主类将所有问题连接在一起(即
.question
),每个选定选项的值的前缀(即
.mr
.ms
.mrs
.mrs>)使用类

  • 如果希望使用所有前缀查看问题,请省略该问题的前缀类
  • 如果希望在多个(但不是全部)前缀下查看问题,可以为该问题设置多个前缀类
选择主标签上的所有问题,然后根据已知前缀标签过滤结果。这将排除所有前缀应该看到的所有问题

定义一个函数以隐藏所有问题,并仅显示类与所选选项匹配的问题

当DOM加载时运行此函数,并为select元素的change事件创建一个事件侦听器以运行此函数

var-questions=$('.question').filter('.mr、.ms、.mrs');
希德尔();
$('前缀').change(hideAll);
函数hideAll(){
问题。隐藏();
questions.filter('.+this.value).show();
}
问题{填充顶部:5px;空白顶部:5px;边框顶部:1px实心35; ccc;}

选择一个前缀:
先生
太太
夫人
这个问题会被所有人看到吗?
什么是问题。
什么不是问题。
为什么。

两个前缀出现此问题?
M/rs.
每当更改事件firedOkay时,它都会将值更改为
mr
。谢谢!如果有人选择mr,然后选择ms或mrs,我如何使css重新出现?谢谢,我使用了您给我的相同的“if”语句,只是在“else”语句中使用了它。val()=“mr”改为“val()=”ms”,“mrs”,并将“none”改为“”。
$('#prefix').on('change', function() {
    $("#disappear").toggle( this.value !== 'mr' );
});
$('#prefix').on('change', function(){
        if($('#prefix').val("mr")){
            $("#disappear").css("display", "none");
        };
});