来自select框的JavaScript if语句

时间:2017-04-02 22:00:57

标签: javascript html if-statement html-select

我无法弄清楚我出错的地方 - 何时"欧洲"被选中没有任何反应。

当我拿走它的if语句时,输出代码肯定没问题。问题似乎与if条件有关。

 <script> 

 function shipping_calc() {  
    var val = document.getElementById.("country").value;    
    if(val === "Europe") {   
        document.getElementById("output").innerHTML = "£2.40";
    }   
 }

</script>

<select id="country" onchange="shipping_calc()">
  <option value="United Kingdom">United Kingdom</option>
  <option value="Europe">Europe</option>
  <option value="Worldwide">Worldwide</option>
</select>

<p id="output"></p>

3 个答案:

答案 0 :(得分:1)

您的javascript中有额外的.。这很有效。

&#13;
&#13;
function shipping_calc() {

  var val = document.getElementById("country").value;

  if (val === "Europe") {
    document.getElementById("output").innerHTML = "£2.40";
  }
}
&#13;
<select id="country" onchange="shipping_calc()">
  <option value="United Kingdom">United Kingdom</option>
  <option value="Europe">Europe</option>
  <option value="Worldwide">Worldwide</option>
</select>

<p id="output"></p>
&#13;
&#13;
&#13;

您有document.getElementById.("country"),而且应该是document.getElementById("country")

答案 1 :(得分:0)

试试这个......

var vall = document.getElementById("country");
var val = vall.options[vall.selectedIndex].value;

if (val === "Europe") {
  document.getElementById("output").innerHTML = "£2.40";
}

答案 2 :(得分:0)

这是一个小提琴:https://jsfiddle.net/6dvgbjr0/

您的代码出错了,有一段额外的时间:

var val = document.getElementById.("country").value;