我有一个组合框,在更改时触发
jquery函数,它调用一个PHP脚本,它将数据库中的结果按名称排列,而不是id(表格城市),并创建一个带有id和城市名称的json文件.
问题来自一个$.get JSON(url,data)函数,它检索所有的json编码数据,但似乎是按照id自动排序数据
问题来自一个$.get JSON(url,data)函数,它检索所有的json编码数据,但似乎是按照id自动排序数据
id name 3 Dania Beach 1 Miami 2 Weston
在jquery getJSON之后,它按照id排序
id name 1 Miami 2 Weston 3 Dania Beach
有没有办法禁用排序?或者如何按名称保存顺序?
解决方法
这是一个关联数组:顺序并不重要.以下JSON对象是等效的:
{ "3" : "Danie Beach","1" : "Miami","2" : "Weston" } { "1" : "Miami","2" : "Weston","3" : "Danie Beach" }
如果您需要订购,您应该在JSON中嵌入一个数组:
{ "beaches" : [ {"key" : "3","value" : "Danie Beach"},{"key" : "1","value" : "Miami"},{"key" : "2","value" : "Weston"} ] }
使用示例
jQuery.ajax({ ... dataType: 'json',success: function(data) { jQuery.each(data.beaches,function(i,beach) { alert(i+': beach['+beach.key+'] = '+beach.value); }); } });