Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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/jquery/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/0/amazon-s3/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 为什么';我的函数是否按预期显示和隐藏元素?_Javascript_Jquery_Css_If Statement_Conditional Statements - Fatal编程技术网

Javascript 为什么';我的函数是否按预期显示和隐藏元素?

Javascript 为什么';我的函数是否按预期显示和隐藏元素?,javascript,jquery,css,if-statement,conditional-statements,Javascript,Jquery,Css,If Statement,Conditional Statements,首先,我对JS有点生疏,所以请放轻松! 我正试图根据选择的国家/地区显示/隐藏2个不同的div。 基本上,如果用户选择英国,它会显示一个英国地址div,如果用户选择任何其他国家,则会显示一个国际div 最终,我只希望一次显示一个div,所以需要根据选择打开和关闭它们 我已经使用了现有的解决方案,以达到我所处的阶段: 国家: 全部的 英国 越南 瓦努阿图 瓦利斯和富图纳群岛WF 西萨摩亚群岛 英国查询框 国际输入框 var Privileges=jQuery(“#国家”); var selec

首先,我对JS有点生疏,所以请放轻松! 我正试图根据选择的国家/地区显示/隐藏2个不同的div。 基本上,如果用户选择英国,它会显示一个英国地址div,如果用户选择任何其他国家,则会显示一个国际div

最终,我只希望一次显示一个div,所以需要根据选择打开和关闭它们

我已经使用了现有的解决方案,以达到我所处的阶段:


国家:
全部的
英国
越南
瓦努阿图
瓦利斯和富图纳群岛WF
西萨摩亚群岛
英国查询框
国际输入框
var Privileges=jQuery(“#国家”);
var select=this.value;
Privileges.change(函数(){
如果($(this.val()=='英国'){
$('.lookupbox').show();
$('.manualbox').hide()
}否则
$('.manualbox').show();
$('.lookupbox').hide();
});
它的工作原理是在选择UK时隐藏国际div,但不显示UK div


我想我遗漏了一些非常基本的东西,所以我非常感谢您的帮助

您的问题存在于您的
else

if ($(this).val() == 'United Kingdom UK') {
    $('.lookupbox').show();
    $('.manualbox').hide()
}
else $('.manualbox').show();
    $('.lookupbox').hide(); 
由于没有同时包含这两条语句,因此只有第一条语句受
if/else
的影响,而第二条语句每次都会执行

if ($(this).val() == 'United Kingdom UK') {
    $('.lookupbox').show();
    $('.manualbox').hide()
} else {
    $('.manualbox').show();
    $('.lookupbox').hide(); 
}

添加花括号将解决您的问题。

您的问题存在于您的
else

if ($(this).val() == 'United Kingdom UK') {
    $('.lookupbox').show();
    $('.manualbox').hide()
}
else $('.manualbox').show();
    $('.lookupbox').hide(); 
由于没有同时包含这两条语句,因此只有第一条语句受
if/else
的影响,而第二条语句每次都会执行

if ($(this).val() == 'United Kingdom UK') {
    $('.lookupbox').show();
    $('.manualbox').hide()
} else {
    $('.manualbox').show();
    $('.lookupbox').hide(); 
}

添加大括号将解决您的问题。

您的问题是,在您的else条件中,以$('.manualbox').show()结尾;$('.lookupbox').hide();每次都在执行。原因是您的else条件没有{}。只需添加,它就会工作。因为你没有{},它将在你的第一个星期结束;哇,这么简单,这么快!非常感谢,它工作得非常完美:)仅供参考,如果您使用具有格式化功能的IDE,那么您可以很容易地发现这样的错误。我已经更新了问题中的代码,这样格式就更容易发现问题。您的问题是,在else条件中,以$('.manualbox').show()结尾;$('.lookupbox').hide();每次都在执行。原因是您的else条件没有{}。只需添加,它就会工作。因为你没有{},它将在你的第一个星期结束;哇,这么简单,这么快!非常感谢,它工作得非常完美:)仅供参考,如果您使用具有格式化功能的IDE,那么您可以很容易地发现这样的错误。我已经更新了问题中的代码,这样格式就更容易发现问题。