我正在尝试根据另一个选择标签的值来填充一个选择标签。填充的选择标记的值来自 JSON 文档。
这里的实际用途是用于离开渡轮码头以及它们可以到达的码头。
这是我正在使用的代码片段
$(function(){
$("select#departingfrom").change(function(){
$.getJSON("/database.json", $(this).val(), function(ferries){
var options = '';
for (var key in ferries) {
options += '<option value=' + key + '>' + key + '</option>';
}
$("select#arrivingto").html(options);
});
});
});
这是 JSON 文档的一个小示例
var ferries = {
"horseshoebay": {
"departurebay": {},
"langdale": {}
},
"departurebay": {
"horeshoebay": {}
},
"tsawwassen": {
"swartzbay": {},
"dukepoint": {}
},
"swartzbay": {
"tsawwassen": {},
"fulfordharbour": {}
},
"dukepoint": {
"tsawwassen": {}
},
"langdale": {
"horeshoebay": {}
},
"fulfordharbour": {
"swartzbay": {}
}
},
然后是 HTML
<select id="departingfrom">
<option selected="selected"></option>
<option value="tsawwassen">Tsawwassen (Vancouver)</option>
<option value="swartzbay">Swartz Bay (Victoria)</option>
<option value="dukepoint">Duke Point (Nanaimo)</option>
<option value="departurebay">Departure Bay (Nanaimo)</option>
<option value="horseshoebay">Horseshoe Bay (North Vancouver)</option>
<option value="langdale">Langdale (Sunshine Coast)</option>
<option value="fulfordharbour">Fulford Harbour (Salt Spring Island)</option>
</select>
<select id="arrivingto">
<option selected="selected"></option>
</select>
我似乎一辈子都无法让“功能(渡轮)”运行,所以这让我认为 .val 工作不正常。让我知道你们是否有任何建议!