Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.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/83.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 我的If语句在Jquery中不起作用_Javascript_Jquery - Fatal编程技术网

Javascript 我的If语句在Jquery中不起作用

Javascript 我的If语句在Jquery中不起作用,javascript,jquery,Javascript,Jquery,我已将所选选项指定给变量。但是,当我使用if语句比较变量和字符串时,if语句执行代码,而不管变量是否等于字符串 我尝试过重写代码,并对javascript if语句进行了一些研究,但据我所知,我不知道代码中有任何错误 $(document).ready(function(){ $("#main_dropdown").change(function(){ let selectedMajor = $(this).children("option:selected").val(

我已将所选选项指定给变量。但是,当我使用if语句比较变量和字符串时,if语句执行代码,而不管变量是否等于字符串

我尝试过重写代码,并对javascript if语句进行了一些研究,但据我所知,我不知道代码中有任何错误

$(document).ready(function(){
    $("#main_dropdown").change(function(){
        let selectedMajor = $(this).children("option:selected").val();              
        if (selectedMajor = 'arts') {
            alert("Your selected major is: " + selectedMajor);
        }
    });
});

您正试图使用
=
对它们进行比较,这将实际为
selectedMajor
变量指定“arts”。改为使用
==
,这将比较它们


如果您需要确保类型也相同,请在javascript中使用
===

使用
=
为变量赋值,
==
实际上是eqaulity检查运算符

还可以使用
trim()
函数检查比较的值是否不包含任何前导/尾随空格

试着改变

if (selectedMajor = 'arts') {
作为


希望这有帮助

您的if语句正在使用赋值=。您希望与==。

selectedMajor='arts'是一个始终返回左侧值的函数

简单赋值运算符用于为变量赋值。赋值操作的计算结果为指定的值

设x=3;

console.log(x=3)
=
=
(和
==
)之间有区别
=
是赋值,如果(选择了MAJOR='arts',请使用
=
进行平等性检查
){
hmm这看起来不像比较..你在分配一个值..你需要
=
==
进行比较如果语句效果很好,那只是你的条件,它总是通过的。请随意将我的帖子标记为“已回答”如果这对你有帮助的话。:-)我对这样一个简单的答案投赞成票。为什么生活对我如此艰难D@NelsonTeixeira我问的是完全相反的问题。:D
if (selectedMajor.trim() == 'arts') {