解析来自Web服务的数据。 jQuery和Sharepoint 2007

问题描述:

我只想知道我在做的方式(解析xml数据)是否正确。解析来自Web服务的数据。 jQuery和Sharepoint 2007

从Web服务(托管在sharepoint 2007上)我回收xml数据。 Web服务不返回任何参数,只返回数据。现在我使用jQuery .ajax()函数来通过这些数据并输出它。

XML是非常深的内部(7级)

什么,我深meen只是一个例子。这不是我的XML看起来的样子。

 <data id="1"> 
      <item id="One value"> 
       <param id="Another value"> 
        .... going deep inside .. 
       </param> 
         <param id="Another value"> 
        .... going deep inside .. 
       </param> 
         <param id="Another value"> 
        .... going deep inside .. 
       </param> 
      </item> 
      <item id="One value"> 
       <param id="Some valu"> 
        ... deep iside ... 
       </param> 
      </item> 
      <item id="One value"> 
       <param id="Another value"> 
        .... 
       </param> 
      </item> 
     </data> 
<data id="1"> 
      <item id="One value"> 
       <param id="Another value"> 
        .... going deep inside .. 
       </param> 
         <param id="Another value"> 
        .... going deep inside .. 
       </param> 
         <param id="Another value"> 
        .... going deep inside .. 
       </param> 
      </item> 
      <item id="One value"> 
       <param id="Some valu"> 
        ... deep iside ... 
       </param> 
      </item> 
      <item id="One value"> 
       <param id="Another value"> 
        .... 
       </param> 
      </item> 
     </data> 

我必须得到所有这些数据intu UL LI HTML标记。这就是我所做的。

$(xData.responseXML).find("data").each(function() { 
       var data_item_id_value = $(this).attr('id'); 
       var data_item_id = $(this); 
       data_menu += "<li>" + data_item_id_value + "</li>"; 

       $(xData.responseXML).find("item").each(function() { 
         ................ going under ...... 
       } 
} 

这是你如何做到这一点?

JSON在客户端上消耗的时间更快,而且更容易遍历,因为它基本上是一堆嵌套的JavaScript数组。

+0

我想我不能谈判输出.. xml是唯一的选择.. – displayName 2010-10-18 18:25:38

任何时候有人拉回JSON/XML数据并希望将其插入到简单或复杂的HTML结构中我总是推荐使用模板解决方案。我选择使用的是基于John Resig和我的一些微软人才开发的。可用here。一篇好文章可以发现here