变量x无法正常工作

时间:2013-12-06 04:23:39

标签: javascript variables

请帮助我,我已经试图解决这个问题很多年了。我似乎有的问题是第二个网页弹出正确,因为第一个网页即使它应该在声明变量x之后弹出,这里是我的代码试试看,你会看到。

<script>
function myFunction()
{
var x;
var r=confirm("By pressing ok you are confirming your username and password");
if (r==true)
  {
  x="Thank You for Registering!";
  }
else
  {
  x="You pressed Cancel!";
  }
document.getElementById("demo").innerHTML=x;
}

var nextpage;
if (x = "Thank You for Registering!"){
 window.open('Password.html');
}//end if
</script>

看到问题是“password.html”在这个页面打开的时候打开了,只有在x =“谢谢你注册”之后才能打开 如果有人把这个问题记录下来,请大家好,我将永远感激不尽。

3 个答案:

答案 0 :(得分:0)

'='是assignment运算符,而'=='是comparison运算符。 例如。如果你写这样的东西。

if(x=1)//always true
{
}
else //this part will never be executed
{
}

然后上面的代码总是会导致true,所以else部分永远不会执行,你也面临同样的问题。所以 将'='替换为'=='

if (x == "Thank You for Registering!"){
 window.open('Password.html');
}

答案 1 :(得分:0)

执行x = "Thank You for Registering!"时,您将该字符串分配给x。完成任务后,它会测试值是否为&#34; true-ish,&#34;它是什么。而不是=(赋值),您需要==(比较)。

答案 2 :(得分:0)

您没有正确比较变量值。你正在做X= ""调用赋值而不是比较。因此,为了比较一个值,你需要以这种方式把它放在

x == "Thank You for Registering!"

==将完成这项工作。把这些事情付诸实践。

了解详情here