我想使用开关来处理条件问题。 条件:
如果没有值,则显示消息1,
如果不是数字,则显示消息2.
var c = document.getElementById("input3").value;
var message1 = "You have not input any data";
var message2 = "Please input only number";
switch (c) {
case "":
window.alert(message1);
break;
case (isNaN(c)):
window.alert(message2);
break;
default:
document.getElementById("p2").innerHTML = c;
}
它不适用于非数字条件。任何人都可以帮忙吗?
答案 0 :(得分:0)
你应该使用" if else"
if(c == ""){
window.alert(message1);
}else if(isNaN(c)){
window.alert(message2);
}else{
document.getElementById("p2").innerHTML=c;
}
答案 1 :(得分:0)
您可以使用true
切换,然后可以为每个案例编写表达式。
如果表达式的计算结果为true,则将使用该案例。
switch (true) {
case c === "":
window.alert(message1);
break;
case isNaN(c):
window.alert(message2);
break;
default:
document.getElementById("p2").innerHTML = c;
}
var c = document.getElementById("input3");
var button = document.getElementById("button");
var message1 = "You have not input any data";
var message2 = "Please input only number";
button.addEventListener('click', e => {
const value = c.value
switch (true) {
case value === "":
window.alert(message1);
break;
case isNaN(value):
window.alert(message2);
break;
default:
document.getElementById("p2").innerHTML = value;
c.value = ''
}
}, false)
<input id="input3" />
<button id="button">click me</button>
<p id="p2"></p>