这里出了什么问题?

时间:2014-09-28 16:17:11

标签: javascript boolean

我制作了这个小脚本来学习javascript。但我不断得到意外的令牌切换.. 但是锄头是设置切换的核心方式吗?

HTML:

<p id="new">test<p>
    <input id="button" type="submit" name="button" value="enter" />

JS:

var switch = true;

if (switch == false){
document.getElementById('button').onclick = function() {
document.getElementById("new").innerHTML = "Mijn Naam!";
    var switch = true;
};
} else {
document.getElementById('button').onclick = function() {
document.getElementById("new").innerHTML = "shiva";
    var switch = false;
};
}

2 个答案:

答案 0 :(得分:4)

怎么样:

<p id="new">test<p>
<input id="button" type="submit" name="button" value="enter" />

var clicked = false;

document.getElementById('button').onclick = function() {
  document.getElementById("new").innerHTML = clicked ? "shiva" : "Mijn Naam!";
  clicked = !clicked;
};

答案 1 :(得分:0)

switch是保留字。你应该使用一些变量名称。

顺便说一下,您的代码可以压缩,如下所示:

var switchOn = true;

document.getElementById('button').onclick = function() {
    document.getElementById("new").innerHTML = 
        switchOn ? "shiva" :"Mijn Naam!";
    switchOn = !switchOn;
}