Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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 这个JS if条件测试有什么问题?_Javascript_Jquery_If Statement - Fatal编程技术网

Javascript 这个JS if条件测试有什么问题?

Javascript 这个JS if条件测试有什么问题?,javascript,jquery,if-statement,Javascript,Jquery,If Statement,这段代码在没有if条件测试的情况下运行良好,if条件哪里出了问题 $(document).ready(function() { if ($("input[name=contest_open]").val() == true) { var refreshId = setInterval(function() { $('#tweets').fadeOut("slow").fadeIn("slow"); $.get("/event", { event:$("in

这段代码在没有if条件测试的情况下运行良好,if条件哪里出了问题

$(document).ready(function() {
  if ($("input[name=contest_open]").val() == true) {
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });      
  }, 30000); 
  }
})
val()将返回一个字符串

如果要根据“true”进行测试,请使用此选项


好吧,因为你有
==
,所以1或一个对象也会计算为true。使用
==
时,只有当它是布尔值true时,才会计算为true。

试试这个。如果您认为该值可以包含“True”,那么最好将其转换为小写

$(document).ready(function() {
  if ($("input[name=contest_open]").val() == "true") {
  var refreshId = setInterval(function()
  {
       $('#tweets').fadeOut("slow").fadeIn("slow");
       $.get("/event", { event:$("input[name=event]").val(), }, function(data) {
         console.log(data.success);
         console.log(data.page_link);
         console.log('Succesfully Loaded Data from JSON FORMAT GET');
         $('#tweets').html(data.html);
         $('#pagelink').html(data.page_link);
       });      
  }, 30000); 
  }
})

问题是
val
不返回布尔值。如果您试图检查
input[name=contest\u open]
值是否为空,请尝试
val()“”


如果您试图检查该值是否为字符串“true”,则需要用引号括起
true

如果要检查是否存在,请使用:

if ($("input[name=contest_open]").val()) 
只是

另一方面,如果你想检查“true”的内容,你可以使用

if ($("input[name=contest_open]").val() == "true")

原因很简单,val()函数返回一个字符串

虽然代码没有太多描述,但请尝试仅使用if($(“input[name=contest\u open]”).val())。您可能需要
==“true”
,因为.val()返回字符串。
if ($("input[name=contest_open]").val() == "true")