来自javascript的多个操作,如果

来自javascript的多个操作,如果,javascript,if-statement,Javascript,If Statement,我似乎找不到讨论这个问题的文档,所以我想也许这里有人可以帮忙。我想编写一个javascript if/else函数来触发多个事件。我的代码有点粗糙,但我认为应该是这样的: 函数getFruit(){ var x=document.getElementById(“myinput”).value; var评分; var图; 如果(x==“苹果”){ score=“A”| pciture=”http://exampple.com/assets/apple.jpg"; 其他(x==“香蕉”){ sco

我似乎找不到讨论这个问题的文档,所以我想也许这里有人可以帮忙。我想编写一个javascript if/else函数来触发多个事件。我的代码有点粗糙,但我认为应该是这样的:

函数getFruit(){ var x=document.getElementById(“myinput”).value; var评分; var图; 如果(x==“苹果”){ score=“A”| pciture=”http://exampple.com/assets/apple.jpg"; 其他(x==“香蕉”){ score=“B”|| picture=”http://example.com/assets/banana.jpg"; } document.getElementById(“text”).innerHTML=score; document.getElementById(“display”).image.src=picture; }


您只需要在不同的行中使用它们。没有理由执行
|

function getFruit() {
    var x = document.getElementById("myinput").value;
    var score;
    var picture;

    if (x === "Apple") {
       score = "A";
       picture = "http://exampple.com/assets/apple.jpg";
    }
    else if (x === "Banana") {
       score = "B";
       picture = "http://example.com/assets/banana.jpg";
    }
    document.getElementById("text").innerHTML = score;
    document.getElementById("display").image.src = picture;
}

代码中存在多个语法错误

这是正确的if/else语句

    if (x === "Apple") {
       ...
    } else {
       ...
    }
函数getFruit(){ var x=document.getElementById(“myinput”).value; var评分; var图; 如果(x==“苹果”){ score=“A”; 图片=”http://exampple.com/assets/apple.jpg"; }否则{ 得分=“B”; 图片=”http://example.com/assets/banana.jpg"; } document.getElementById(“text”).innerHTML=score; document.getElementById(“display”).src=picture; }


如果您希望代码更清晰,并且避免在所有地方都使用相同的变量赋值,请选中
,您应该将所有内容包装在一个对象中,并使用输入值访问属性

//以不同的方式调用此函数renderFruit或loadFruit等
函数getFruit(){
var x=document.getElementById(“myinput”).value;
风险值={
苹果公司:{
得分:“A”,
图片:'https://via.placeholder.com/300x120?text=Apple'
},
香蕉:{
得分:“B”,
图片:'https://via.placeholder.com/300x120?text=Banana'
}
};
var f=水果[x];
document.getElementById(“text”).innerHTML=f&&f.score;
document.getElementById(“display”).src=f&&f.picture;
//请不要将getSomething命名为一个没有
//有返回语句,如:返回f;
}


在If(或else)块中,您可以在多行上声明新操作…只要它位于花括号内。JS中的双管符号表示or语句,而不是新行。解释您的代码应该做什么,以及“事件”是什么你说的是。你真的需要从头开始,并遵循一些基本的教程。你的if和else块中的| |不应该在那里,而且你在if pciture vs picture中有一个输入错误。你需要在不同的行上定义这些变量。为什么你有一个OR?我不应该假设他们知道如何做到这一点。
else if
在JAVScription中似乎不是有效的
else
基于他们的原始代码,他们正在尝试执行
else if
而不是
else
感谢对多行条目的更正。您是正确的,我的语法是else if not else…我的bad应该是
else if
,因为他们想检查
x==“香蕉”
这是一个非常有趣的代码块,我将对其进行测试。感谢您发布这篇文章!