簡體   English   中英

從PHP獲取XML到Jquery-XML標簽

[英]Get XML from PHP to Jquery - XML tags

我試圖接收從process.php到jquery的XML輸出並遍歷記錄。 好像我正在接收XML(我可以在調試器中看到它),但是jquery循環沒有拾取標簽。

如果我直接使用虛擬XML,則可以正常工作,但是每個節點都以與HTML標簽相同的方式關閉。 我可以通過更改PHP或使用某些Jquery格式化功能來解決此問題嗎?

JS和PHP

 $( "#searchForm" ).submit(function( event ) { event.preventDefault(); $.post( "process.php","xml", function( data ) { $(data).find('post').each(function() { console.log(this); var $post = $(this); var Msg = $post.find('Msg').text();; var html = '<tr><td class="bold">' + Msg + '</td></tr>'; $( "#result" ).empty().append($(html)); }); }); }); 
 header("Content-type: text/xml"); while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) { $node = $dom->createElement("post"); $newnode = $parnode->appendChild($node); $newnode->setAttribute("Timestamp", date("Ymd G:i:s",strtotime($row['TimeStamp']))); $newnode->setAttribute("User", $row['UserName']); $newnode->setAttribute("Msg", $row['Msg']); } echo $dom->saveXML(); 

實際的XML輸出

 <?xml version="1.0"?> -<posts> <post Msg="Heisann" User="1" Timestamp="2015-24-05 22:08:42"/> <post Msg="Heisann" User="1" Timestamp="2015-02-06 21:10:40"/> <post Msg="" User="1" Timestamp="2015-02-06 21:57:42"/> 

虛擬XML(忽略內容,只看格式)

  var xml = "<shows><show><date>9/8</date><place>Toads Place</place><location>New Haven, CT</location><time>9PM</time></show></shows>" 

我認為您首先應該對收到的數據進行解析XML

xmlDataObj = $($.parseXML (data)); 

接着

xmlDataObj.find('post').each(function() {
   .....
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM