簡體   English   中英

我希望從另一個下拉選擇中顯示和隱藏1或2個下拉菜單

[英]I wish to show and hide 1 or 2 drop down menus from another drop down selection

我有代碼,當在下拉菜單中選擇一個項目時,會出現另一個下拉菜單。 但是,它可以單獨工作,但是一旦涉及2個菜單,代碼就會出現沖突。 這就是我想要做的:選擇“交付”時,出現“時間”下拉列表。 選擇“集合”時,出現“ Number_of_parcels”下拉列表。 選擇“收款和付款”時,兩者均應出現。

任何幫助,將不勝感激。

我的代碼如下:

 function show(aval) {
    if (aval == "Collection" || aval == "Collection_and_Delivery") {
    hiddenDiv.style.display='inline-block';
    Form.fileURL.focus();
    } 
    else{
    hiddenDiv.style.display='none';
    }
 }

 function show(aval) {
    if (aval == "Delivery" || aval == "Collection_and_Delivery") {
    hiddenNo.style.display='inline-block';
    Form.fileURL.focus();
    } 
    else{
    hiddenNo.style.display='none';
    }
 }

</script>
</head>

<body>
<form name="form1" id="ff" method="post" action="http://www.xxxxxx.com/cgi-bin/form10.pl" onsubmit="myButton.disabled = true; return true;" target="_blank">
<table>
  <tr>
    <th align="left" colspan="3"> <select name="Collection_Delivery" id="Collection_Delivery" onchange="java_script_:show(this.options[this.selectedIndex].value)">
        <option value="">-</option>
        <option value="Delivery">Delivery</option>
        <option value="Collection">Collection</option>
        <option value="Collection_and_Delivery">Collection &amp Delivery</option>
      </select>
      &nbsp;&nbsp;&nbsp;
      <div id="hiddenDiv" style="display:none">
        <select name="Number_of_parcels" id="Number_of_parcels">
          <option value="z" selected="selected">No. of Parcels</option>
          <option value="1">1</option>
          <option value="2">2</option>
        </select>
      </div>
      &nbsp;&nbsp;&nbsp;
      <div id="hiddenNo" style="display:none">
        <select name="Time" id="Time" onChange="selection()">
          <option value="x" selected="selected">Time</option>
          <option value="24hours">24 Hours</option>
          <option value="Next_day_9am">Next Day 9am</option>
        </select>
      </div>
    </th>
  </tr>
</table>
</body>

您正在重新編寫show函數,以聲明其他show函數。

我修復了代碼,然后這樣做:

function show(aval) {
  var showCollection = (aval === "Collection"|| aval === "Collection_and_Delivery");
  var showDelivery = (aval === "Delivery"|| aval === "Collection_and_Delivery");

  hiddenDiv.style.display= showCollection ? "inline-block" : "none";
  hiddenNo.style.display= showDelivery ? "inline-block" : "none";

  //Form.fileURL.focus();
}

如果您想開始學習javascript,建議您使用以下鏈接:

暫無
暫無

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

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