簡體   English   中英

通過ISO代碼提交國家/地區-html表單

[英]submit country by ISO code - html form

因此,我想提供所有國家/地區的列表,供用戶從表格中選擇。 我從該站點以html格式找到了相當不錯的國家/地區列表 該站點通過將完整的國家/地區名稱列出為html字符串來實現我的任務,但是該表單實際上將其ISO代碼發送到服務器。 很好,但是當閱讀提交的值時,有人將如何解決提供國家全名的問題?

您認為最好將國家/地區值作為ISO值提交,還是我應該只提交國家/地區的全名? 所有站點似乎都在使用較早的選項,但是對我來說似乎很麻煩。 有人可以對此事發表一些想法,解釋為什么首先使用ISO代碼,以及如果使用ISO則如何將其解碼回國家名稱? 謝謝

根據我的評論...的想法是,當選擇更改時,它將調用JS函數。 在其中,您建立了一個數組,其中的鍵與select的值以及要顯示的內容匹配。 因此,您只需要將該代碼傳遞給數組即可獲取值。

<form>

<select onchange="showName()" id="country">
    <option value="AF">Afghanistan</option>
    <option value="AX">Åland Islands</option>
    <option value="AL">Albania</option>
    <option value="DZ">Algeria</option>
    <option value="AS">American Samoa</option>
    <option value="AD">Andorra</option>
    <option value="AO">Angola</option>
    <option value="AI">Anguilla</option>
    <option value="AQ">Antarctica</option>
    <option value="AG">Antigua and Barbuda</option>
    <option value="AR">Argentina</option>
    <option value="AM">Armenia</option>
    <option value="AW">Aruba</option>
    <option value="AU">Australia</option>
    <option value="AT">Austria</option>
    <option value="AZ">Azerbaijan</option>
    <option value="BS">Bahamas</option>
...
</select>
<div id="selResult">
selected: nothing
</div>
</form>

JS:

var myArray = {"AF": "Afghanistan", "AX": "Åland Islands", "AL": "Albania"};
function showName(){
  selectRes = myArray[document.getElementById("country").value];
  document.getElementById("selResult").innerHTML = selectRes;
}

您必須創建完整的列表。 但這是如何使其工作的基本思想。

這里的小提琴具有全部內容,外加一種使用引用數組的其他方法。

對於它的價值,如果您打算經常使用它,則應考慮在數據庫中創建一個引用表,而不是在JS中隨意處理。

暫無
暫無

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

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