Javascript jQuery get json每个都在堆叠字符串,而不是追加字符串
我有一个接收json五个数字的jQuery get。在get中,我有一个each函数,它应该附加到原始字符串,而不是将所有数据组合在一起。我尝试了getJSON,而不是在函数末尾使用“json”变量获取。有什么想法吗 My“/?a=getrigs”JSON 我的jQuery:Javascript jQuery get json每个都在堆叠字符串,而不是追加字符串,javascript,jquery,json,html,Javascript,Jquery,Json,Html,我有一个接收json五个数字的jQuery get。在get中,我有一个each函数,它应该附加到原始字符串,而不是将所有数据组合在一起。我尝试了getJSON,而不是在函数末尾使用“json”变量获取。有什么想法吗 My“/?a=getrigs”JSON 我的jQuery: var rigselect = "<select id='myid'>"; $.get("?a=getrigs", function(rigdata) { $.each(rigdata, functio
var rigselect = "<select id='myid'>";
$.get("?a=getrigs", function(rigdata) {
$.each(rigdata, function(rigkey, rigval) {
rigselect += "<option value='" + rigval + "'>" + rigval + "</option>";
});
rigselect += "</select>";
}, "json");
var rigselect=“”;
$.get(“?a=getrigs”,函数(rigdata){
$。每个(rigdata,函数(rigkey,rigval){
rigselect+=“”+rigval+“”;
});
rigselect+=“”;
}“json”);
它产生了什么:
<select id='myid'>
<option value="50,81,82,85,86">50,81,82,85,86</option>
</select>
50,81,82,85,86
反序列化JSON时,它将成为一个数组数组
当您循环外部数组中的项时,只有一个项,即数组。当您将数组与字符串连接时,数组将转换为字符串,即数组中由逗号分隔的项
将JSON更改为一个数组:
["50","81","82","85","86"]
或通过内部数组而不是外部数组进行循环:
$.each(rigdata[0], function(rigkey, rigval) {
我不明白您试图实现什么以及问题是什么。请记住,您发布的输出是一个数组而不是JSONY您的json结果是一个嵌套数组,请使用
$。每个(rigdata[0]…
)或更改您的结果并使用$。GetJSONA您确定rigval包含json中的一个值吗?您可以尝试console.log(rigval)吗?查看结果。@Diego:JSON值不必是对象,它可以是数组,甚至只是一个值。
$.each(rigdata[0], function(rigkey, rigval) {