【发布时间】:2018-07-19 20:31:00
【问题描述】:
我使用了以下代码: https://www.webslesson.info/2017/05/json-dynamic-dependent-select-box-using-jquery-and-ajax.html
在 JSON 文件中,它具有以下字段:
[
{
"id":"1",
"name":"USA",
"parent_id":"0"
},
{
"id":"2",
"name":"Canada",
"parent_id":"0"
},
{
"id":"3",
"name":"Australia",
"parent_id":"0"
}
]
但我添加了另一个名为“链接”的字段
我试图弄清楚如何检索当前选定的“链接”,但不知道该怎么做。
我不知道应该在代码的哪个位置添加 cat_link = value.link;以便根据所做的选择获取当前链接。
例如:
我的数据文件如下所示:
[
{
"id":"1",
"name":"USA",
"link":"www.google.com",
"parent_id":"0"
},
{
"id":"2",
"name":"Canada",
"link":"www.cnn.com",
"parent_id":"0"
},
{
"id":"3",
"name":"Australia",
"link":"www.gmail.com",
"parent_id":"0"
}
]
我想获取组合框选择的 value.link。目前此代码通过以下代码获取当前 id:
$(document).on('change', '#country', function(){
var country_id = $(this).val();
if(country_id != '')
{
load_json_data('state', country_id);
}
else
{
$('#state').html('<option value="">Select state</option>');
$('#city').html('<option value="">Select city</option>');
}
});
var country_id = $(this).val(); 获取当前国家/地区 ID,但我如何获取当前链接?
这里是load_json_data():
load_json_data('country');
function load_json_data(id, parent_id)
{
var html_code = '';
$.getJSON('country_state_city.json', function(data){
html_code += '<option value="">Select '+id+'</option>';
$.each(data, function(key, value){
if(id == 'country')
{
if(value.parent_id == '0')
{
html_code += '<option value="'+value.id+'">'+value.name+'</option>';
}
}
else
{
if(value.parent_id == parent_id)
{
html_code += '<option value="'+value.id+'">'+value.name+'</option>';
}
}
});
$('#'+id).html(html_code);
});
}
【问题讨论】:
-
缺少
load_json_data()的代码以显示如何创建选项 -
它在我发布的那个链接中。我也可以放在这里...
-
如何 var country_id = $(this).val();获取 id 变量?不应该像 var country_id = $(this).val('link');工作?它给了我 [object object] 作为输出...
-
另一个将 jQuery 代码复制粘贴到他的脚本中的“开发人员”。这真的是 JavaScript 的未来吗?
标签: javascript jquery json ajax