我正在创建一个动态的Web项目,使用Tomcat和我在jQuerys getJSON方法中发送/接收数据时遇到一些问题。
我拥有的是:
$('#selectNone').click(function(){
var method = "getWellList";
$.getJSON("HandleGet",{Method:method},
function(data) {
$.each(data, function(i, field){
$("#dynamicCheck").append(field + " ");
然后它出现在java中的doGet中,然后我创建了一个XML,将XML转换为JSON。 XML看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<mobileApp>
<wellList>
<well uid="0" name="Well0"/>
<well uid="1" name="Well1"/>
<well uid="2" name="Well2"/>
</wellList>
</mobileApp>
这会创建一个像这样的JSON:
[[
{
"@uid": "0",
"@name": "Well0"
},
{
"@uid": "1",
"@name": "Well1"
},
{
"@uid": "2",
"@name": "Well2"
}
]]
我找不到任何关于在jQuery中解析JSON响应并使用填充复选框控制组的好文档。
任何人都可以帮助我吗? JSON是否正确?我使用http://json-lib.sourceforge.net/snippets.html将XML转换为JSON。
提前致谢!
答案 0 :(得分:0)
你可以用jquery读取xml节点..已经尝试过?
答案 1 :(得分:0)
您是否检查了$ .each的jQuery文档? http://api.jquery.com/jQuery.each/
答案 2 :(得分:0)
当然..试试这个:
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$.get ( "http://127.0.0.1/Code/doc.xml" , {} , function ( data ) {
var cnt = { } ;
$.each ( $(data).find ( 'well' ) , function ( i , node ) {
cnt [ i ] = {
"@uid" : $(node).attr('uid'),
"@name" : $(node).attr('name')
}
$ ( '#data' ) . append ( $(node).attr ( 'name' ) + '<br />' ) ;
} ) ;
console.log(cnt);
} ) ;
});
</script>
</head>
<body>
<div id="data"></div>
</body>
和doc.xml:
<?xml version="1.0" encoding="UTF-8"?>
<mobileApp>
<wellList>
<well uid="0" name="Well0" />
<well uid="1" name="Well1" />
<well uid="2" name="Well2" />
</wellList>
</mobileApp>