基于所选选项的jquery getJSON
我想基于所选选项进行getJSON搜索。例如:如果我在选择选项菜单中选择意大利语,我希望getJSON查询看起来像json.w1.意大利语 我知道这个代码不正确,这就是我请求帮助的原因 代码如下:基于所选选项的jquery getJSON,jquery,json,getjson,Jquery,Json,Getjson,我想基于所选选项进行getJSON搜索。例如:如果我在选择选项菜单中选择意大利语,我希望getJSON查询看起来像json.w1.意大利语 我知道这个代码不正确,这就是我请求帮助的原因 代码如下: <select name="language"> <option selected="selected" value="english">English</option> <option value="german">German<
<select name="language">
<option selected="selected" value="english">English</option>
<option value="german">German</option>
<option value="spanish">Spanish</option>
<option value="italian">Italian</option>
<option value="french">French</option>
<option value="portuguese">Portuguese</option>
<option value="dutch">Dutch</option>
<option value="romanian">Romanian</option>
<option value="greek">Grek</option>
<option value="bulgarian">Bulgarian</option>
</select>
<div id="language"></div>
<div id="results"></div>
<script>
$("select")
.change(function() {
var str = "";
$("select option:selected").each(function() {
str += $(this).text() + " ";
});
$("#language").text(str);
var query = json.w1.str;
$.getJSON("lang.json", function(json) {
$("#results").text(query);
});
})
.change();
</script>
您的代码比需要的要复杂得多-要获得select的所选值,您可以简单地调用val。然后,您可以使用括号表示法将键作为字符串从对象检索项。试试这个:
$('select').change(function () {
var lang = $(this).val();
$("#language").text(lang);
$.getJSON('lang.json', function(json) {
$('#results').text(json.w1[lang]);
});
}).change();
嘿,你的例子中似乎有很多你不需要的代码。没有看到你的结果,我想你想要这样的东西
如果您发布一个json返回内容的示例,我们可能会提供更多帮助。没有真正理解您的意思。您的意思是您的json.w1具有类似json.w1.dutch、json.w1.希腊文、json.w1.english等属性,并且希望根据用户选择获取值吗?如果需要,那么可以使用var query=json.w1[str];。如果我在HTML代码中选择西班牙语,我想打印Casa。下面是我的JSON文件的一个简短示例:{w1:{English:House,German:Haus,Spanish:Casa}}
$( "select" )
.change(function () {
var lang = $( "select option:selected" ).val();
$( "#language" ).text( lang );
$.getJSON( "lang.json", function( json ) {
$( "#results" ).text( json.w1.lang );
});
});