簡體   English   中英

使用Javascript停留在下拉菜單上的選定項目上

[英]Stay on selected item on drop down menu using Javascript

發生了什么事,我正在嘗試將所選內容下拉菜單保持在“居家”狀態,但是在我單擊“提交”后,它會一直切換到默認菜單。 有人可以幫我處理JavaScript代碼,因為我確定這是問題所在? 謝謝大家,我正在嘗試自我學習。

  function GetSelectedItem(){ var option = document.getElementById("locale").value; } //THIS WON'T WORK? function StayOnSelectedItem(){ var element = document.getElementById("locale"); var value = element.options[element.selectedIndex].value; } 
 <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>My Website toolbar</title> <link rel="stylesheet" href="languageswitcher.css"> </head> <body> <header> <div id="country-select"> <form action="" method = "get"> <select id= "locale" name="locale"> <option value="en_US">English(US)</option> <option value="en_GB">English(UK)</option> <option value="bg_BG">Bulgarian</option> <option value="cs_CS">Czech</option> <option value="da_DK">Danish</option> <option value="de_DE">German</option> <option value="ek_GR">Greek</option> <option value="es_ES">Spanish</option> <option value="et_ET">Estonian</option> <option value="fi_FI">Finnish</option> <option value="fr_FR">French</option> <option value="hu_HU">Hungarian</option> <option value="it_IT">Italian</option> <option value="lt_LT">Lithuanian</option> <option value="lv_LV">Latvian</option> <option value="nl_NL">Dutch</option> <option value="no_NO">Norwegian</option> <option value="pl_PL">Polish</option> <option value="pt_PT">Portugese</option> <option value="ro_RO">Romanian</option> <option value="sk_SK">Slovak</option> <option value="sl_SL">Slovenian</option> <option value="sv_SE">Swedish</option> </select> <input value="Select" type="submit" /> </form> </div> </header> <script src="languageswitcher.js"></script> </body> </html> 

 function GetSelectedItem()
 {
     var index = document.getElementById("locale").selectedIndex;    
     alert("value =" + document.getElementById("locale").value); // show selected value
     alert("text =" + document.getElementById("locale").options[index].text); // show selected text 
 }

你的題目

使用Java腳本從下拉列表(選擇框)中獲取選定的文本

與您的第一句話不一樣的問題:

發生了什么事,我正在嘗試將所選內容下拉菜單保持在“居家”狀態,但是在我單擊“提交”后,它會一直切換到默認菜單。

要從下拉列表中的選定選項中獲取文本,請使用

var e = document.getElementById('locale');
var text = e.options[e.selectedIndex].text;
console.log(text);

要在單擊提交類型的按鈕后使表單保持其值,默認情況下,它應以這種方式工作。 據我所知,瀏覽器沒有理由在單擊提交類型的按鈕時希望清除下拉字段。

您可以通過return false;來測試停止瀏覽器的默認行為return false; onsubmit事件中。

<input value="Select" type="submit" onsubmit="GetSelectedItem(); return false;" />

編輯:從您的評論答復來看,您的實際問題似乎完全是另外一回事。 如果要在離開頁面后保留下拉列表的值,則需要將值存儲在某處(通常是Cookie,SessionStorage或Java腳本范圍之外的服務器端會話)。

如果您想使用SessionStorage,我推薦這篇MDN文章

暫無
暫無

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

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