【问题标题】:How to use If Else in OnChange() event in JavaScript?如何在 JavaScript 的 OnChange() 事件中使用 If Else?
【发布时间】:2020-12-06 07:17:07
【问题描述】:

这是我的 HTML 代码:

<select id="stand" onchange="myFun2()">
                <option value="platinumGallery">Platinum Gallery</option>
                <option value="superHospitalityStand">Super Hospitality Stand</option>
                <option value="northWestStand">North West Stand</option>
                <option value="eastStand">East Stand</option>
</select><br><br>

<label>Cost Of Ticket: </label>
<input id="costOfTicket" type="text" readonly>

还有JS代码:

function myFun2(){
    var costOfTicket;
    var selectedStand = document.getElementById("stand").value;
    if(selectedStand = "platinumGallery"){
        costOfTicket = 25000;
    }
    else if(selectedStand = "superHospitalityStand"){
        costOfTicket = 20000;
    }
    document.getElementById("costOfTicket").value = costOfTicket;
}

每当onchange() 事件发生时,我想根据select 的选定值显示Cost Of Ticket。但它在onchange() 事件之后显示25000,然后无论选择什么值都不会改变。如何更正代码以完成上述任务?

【问题讨论】:

    标签: javascript html if-statement dom-events onchange


    【解决方案1】:

    让我告诉你。在 if-else 语句中,您不是在比较值,而是实际上是在 分配 值。

    所以将你的 if-else 语句更改为:

    if(selectedStand == "platinumGallery"){
            costOfTicket = 25000;
    }
    else if(selectedStand == "superHospitalityStand"){
            costOfTicket = 20000;
    }
    

    【讨论】:

      【解决方案2】:

      您在if 语句中使用了=。您需要在 `if 语句中使用 ===== 以使其作为条件工作。

      function myFun2(){
          var costOfTicket;
          var selectedStand = document.getElementById("stand").value;
          
          if(selectedStand == "platinumGallery"){
              costOfTicket = 25000;
          }
          else if(selectedStand == "superHospitalityStand"){
              
              costOfTicket = 20000;
          }
          document.getElementById("costOfTicket").value = costOfTicket;
      }
      <select id="stand" onchange="myFun2()">
                      <option value="platinumGallery">Platinum Gallery</option>
                      <option value="superHospitalityStand">Super Hospitality Stand</option>
                      <option value="northWestStand">North West Stand</option>
                      <option value="eastStand">East Stand</option>
      </select><br><br>
      
      <label>Cost Of Ticket: </label>
      <input id="costOfTicket" type="text" readonly>

      【讨论】:

      • 哦!非常感谢你!这是有史以来最愚蠢的错误之一。
      猜你喜欢
      • 2019-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-03
      • 2021-09-29
      相关资源
      最近更新 更多