Javascript Unexpected Token {with conditionals

时间:2018-04-03 23:41:25

标签: javascript html

我正在尝试将JS条件放入列出的订单中,并且我需要检查两个单选按钮,然后根据选择继续下一个列表。

<li data-input-trigger>
<label class="fs-field-label fs-anim-upper" for="q1">Welcome <br> <br> Is 
this application for yourself or someone else?</label>
<div class="fs-radio-group fs-radio-custom clearfix fs-anim-lower">
    <span><input id="radio_myself" name="radMyself" type="radio" 
    value="choice"/>Myself</span>
    <span><input id="radio_else" name="radElse" type="radio" 
    value="choice"/>Someone Else</span>
<script>                                 
    if(document.getElementById("radio_myself").checked == true){
    //do this;
    }                                    
    else(document.getElementById("radio_else").checked == true){
    //do that;
    }
</script>

因此,如果选择radio_myself,我希望它显示下一个

列表
<li>
    <label class="fs-field-label fs-anim-upper" for="q1">What's your name?</label>
</li>

或其他列表,如果选择了其他单选按钮。

我不确定我是否正在实现它,因为我刚开始使用JS和HTML。我不断收到意外的令牌错误{在else行代码中。

2 个答案:

答案 0 :(得分:2)

else不接受参数。因此,如果要检查<{p>>,则必须在if内执行另一个else

if (document.getElementById("radio_myself").checked == true) {
  //do this;
} else {
  if (document.getElementById("radio_else").checked == true) {
    //do that;
  }
}

您还可以查看MDN,如果您想了解JavaScript中的工作方式,这是一个非常好的资源

答案 1 :(得分:2)

if(document.getElementById("radio_myself").checked == true){
    //do this;
}
else(document.getElementById("radio_else").checked == true){
    //do that;
}

需要:

if(document.getElementById("radio_myself").checked == true){
    //do this;
}
else if(document.getElementById("radio_else").checked == true){
    //do that;
}

但您可以重写为:(假设必须至少检查一个无线电)

if(document.getElementById("radio_myself").checked){
    //do this;
}
else {
    //do that;
}

else不能包含条件。仅当上面的ifelse if为假时才会执行。