HTML代码
<select id = "country">
<option selected = "selected" value = "0">all</option>
<option value = "1">country1</option>
<option value = "2">country2</option>
<option value = "3">country3</option>
</select>
<select id = "region">
<option selected = "selected">all</option>
</select>
Javascript代码
//add an option and it's value with jquery append and javascript split.
//Array elements are in form of option|value
//so that we can process them with split
var regions = new Array()
regions[0] = ["all|1"];
regions[1] = ["region1|2","region2|3"]
regions[2] = ["region3|4","region4|5"]
regions[3] = ["region5|6","region6|7"]
$(document).ready(function() {
$("#country").change(function(){
$("#region").empty()
var v = $("#country").val()
for(i=0; i<regions[v].length; i++)
$("#region").append(new Option(regions[v][i].split("|")[0]),
regions[v][i].split("|")[1])
});
});
我将有许多像这样的不同表单(因此我必须创建许多数组),并且每个表单将被重用到多个页面,因此如果我想在选择标记内添加新选项,代码必须是在一个地方,这样我就可以做一次更改。数组会很长..我正在考虑将第一个选择放入外部文件中并使用 php 检索它,第二个选择的数组将全部位于外部 javascript 文件中,该文件将包含在我的所有文件中.. 你能想到一个更干净的实现,这样我就不必在基本的 javascript 文件中创建大型数组,或者你认为这是一个正确的方法吗?
最佳答案
使用 JavaScript 数组没有任何问题,尽管您可能需要考虑 JSON .
关于javascript - 动态更改表单中的选择值,如何保存它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10322564/