Sat*_*lan 2 php ajax jquery json
我有一个json如下
{"DataList":
{"Data":[
{"@attributes":{"description":"FGFGFGH","code":"FGFGFGH"}},
{"@attributes":{"description":"UIS default relying party","code":"UIS"}},
{"@attributes":{"description":"MDEx Healthcare Portal","code":"MDE"}},
{"@attributes":{"description":"VBK","code":"VBK"}},
{"@attributes":{"description":"Omnicare","code":"OC"}},
{"@attributes":{"description":"MDEX","code":"MDEX"}},
{"@attributes":{"description":"Bank of America","code":"BOA"}},
{"@attributes":{"description":"LDAP","code":"LDAP"}},
{"@attributes":{"description":"JetBlue","code":"JB"}},
{"@attributes":{"description":"Digital Signature Demo Application","code":"DEMODS"}}
]
}
}
Run Code Online (Sandbox Code Playgroud)
我在jquery代码下面创建选择框选项
$.each(response, function(i, DataList) {
$.each(DataList,function(j,Data){
var finalObj = Data.@attributes;
options += '<option value="' + finalObj.code + '">' + finalObj.description + '</option>';
});
$("#relyingpartyall").html(options);
});
Run Code Online (Sandbox Code Playgroud)
上面的代码在firefox 3.6中工作正常,但在firefox 10,11,chrome,safari中,即它无法正常工作,它会产生以下错误.
Firefox 11 : can't convert AttributeName to string ,var finalObj = Data.@attributes;
Chrome : Unexpected Identifier @ line "options += '<option value="' + finalObj.code + '">' + finalObj.description + '</option>';"
Run Code Online (Sandbox Code Playgroud)
有谁可以帮我解决这个问题?
试试这样:
var finalObj = Data["@attributes"];
Run Code Online (Sandbox Code Playgroud)
或直接访问单个数据数组$.each:
var relyingpartyall = $('#relyingpartyall');
relyingpartyall.empty();
$.each(response.DataList.Data, function(i, item) {
var attributes = item["@attributes"];
relyingpartyall.append(
$('<option/>', {
value: attributes.code,
html: attributes.description
})
);
});
?
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
133 次 |
| 最近记录: |