簡體   English   中英

JavaScript中的下拉組合

[英]Dropdown combination in javascript

我是JavaScript新手。 我正在嘗試使此下拉組合適用於項目,但顯然這不起作用。 您能檢查一下此代碼中的錯誤嗎?

這是html代碼。

<select id="chartSelect" onchange="changeChart(this.value);">
   <option value="Line">Line Chart</option>
   <option value="Pie">Pie Chart</option>
   <option value="Map">Choropleth Map</option>
</select>
<select id="dataSelect" onchange="changeData(this.value);">
   <option value="House">House Data</option>
   <option value="Toilet">Toilet Data</option>
</select>

這是javascript部分;

function changeChart(ele){
   var value = chartSelect.options[chartSelect.selectedIndex].value;
   if (value==="Pie"){
      var dataType = dataSelect.options[dataSelect.selectedIndex].value;
      if (dataType === "House"){
         alert("This is pie chart(HOUSE)");
      }
      if (dataType === "Toilet"){
         alert("This is pie Chart(TOILET)");
      }
   }
   if(value=="Line"){
      var dataType = dataSelect.options[dataSelect.selectedIndex].value;
      if(dataType == "House"){
         alert("This is line chart(HOUSE)");
      }
      if (dataType == "Toilet"){
         alert("This is line chart(TOILET)");
      }
   }
};

這是jsfiddle的鏈接。

http://jsfiddle.net/rFXTk/

你的問題。 在您的jsfiddle中,您的函數正在以onload加載(因為在JSFiddle選項中已設置為這樣做)。 如果它在onload中,則僅對onload函數可用,而對HTML本身不可用。

我的更新: http//jsfiddle.net/shawn31313/rFXTk/1/

我只是更改了: onload更改為No wrap - in <head> 我還刪除了其中包含未定義變量ele函數,即使與該問題無關。

您在此處編寫的代碼是正確的,但是您的小提琴js部分另有一行。 只要從小提琴中刪除它,它將起作用。

唯一的事情是您沒有ChangeData()的定義,請添加它。 您需要添加所有條件。 它在書面條件下工作。

您沒有在changedata()函數中定義一個錯誤,而又有一個問題changeChart(this.value); 但是函數中沒有使用this.value,因此我將您的代碼精煉為無錯誤。 小提琴演示

function changeChart() {
            var value = chartSelect.options[chartSelect.selectedIndex].value;
            if (value == "Pie") {
                var dataType = dataSelect.options[dataSelect.selectedIndex].value;
                if (dataType == "House") {
                    alert("aakarshan")
                }
                if (dataType == "Toilet") {
                    alert("DHAKAL")
                }

            }

            if (value == "Line") {
                var dataType = dataSelect.options[dataSelect.selectedIndex].value;
                if (dataType == "House") {
                    alert("BIVAV")
                }
                if (dataType == "Toilet") {
                    alert("SATYAL")
                }

            }

        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM