2016-10-11 49 views
-1

如何在JavaScript中添加多个条件?我不想检查&&,我想知道是否有像elseif或我不知道的方法,检查所有条件,如果第一个是false然后去另一个,如果这也是false去到else。在我的例子中,如果我在文本字段中写入“空白”,它将不会显示任何内容。该代码将无法正常工作,但是如果我从elseif(*)中删除代码,那么该代码就可以正常工作。为什么我的elseif不起作用?我试图写一些不同于“空白”的东西来检查我的elseif条件,但我不知道它为什么不起作用。这是我的代码:如何添加多个条件

function Test() { 
    var test = document.getElementById('name').value; 
    var para = document.getElementById('hidden'); 

    if (test == "blank") { 
    document.write(test.length); 
    } 
    (*) - > elseif(test = "Cristian") { 

    para.innerHTML = "this is first para"; 
    } < -(*) 
    else { 
    para.innerHTML = "this is second para"; 
    para.style.font = "italic bold 20px arial,serif"; 


    } 
} 
<p id="hidden">Surprise!</p> 

<input type="text" id="name" /> 

<input type="button" onclick="Test()" value="press me" /> 
+3

'elseif'应该是'别人if' ....'测试= “克里斯蒂安”'应该是'test ==“Cristian”' - 浏览器为开发者提供**开发者工具**,其中一个控制台会告诉你,elseif' –

+1

存在问题,这是一种很好的习惯除非你特别需要'=='的类型强制语义,否则*总是使用'==='和'!=='进行比较。 – Phylogenesis

+0

@JaromandaX感谢之手 –

回答

2

你是关闭...

而不是写elseif你应该添加一个空格,写else if

要比较元素,您应该使用=====

=用于初始化

+0

== vs = ...似乎已经知道它在'if'中,并且在'else if'中被遗忘了! –

+0

@JaromandaX当然,但最好提醒他 – Weedoze

+0

我是编程新手,现在我正在学习,所以这就是为什么我做了这个新手的错误:D但感谢您的建议。 –

0

您还可以使用switch语句来:

switch(test){ 
    case: "test": 
    document.write(test.length); 
    break; 
    case: "Christian": 
    para.innerHTML = "this is first para"; 
    break; 
    default: 
    para.innerHTML = "this is second para"; 
    para.style.font = "italic bold 20px arial,serif"; 
}