jQuery getJSON响应

时间:2011-12-01 21:46:00

标签: javascript jquery ajax tomcat get

我正在创建一个动态的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。

提前致谢!

3 个答案:

答案 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>