jQuery創(chuàng)建及操作xml格式數(shù)據(jù)示例
本文實例講述了jQuery創(chuàng)建及操作xml格式數(shù)據(jù)。分享給大家供大家參考,具體如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jQuery創(chuàng)建及操作xml</title> </head> <body> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script> $(function(){ var xmlDom=$($.parseXml("<?xml version=\"1.0\" encoding=\"utf-8\" ?><root><person></person></root>")); xmlDom.find("root").appendXml("<content/>").text("測試"); xmlDom.find("content").beforeXml("<test/>"); alert(xmlDom.xml()); }); (function($) { function mnpXml(opCode, xmlStr) { return this.each(function() { if (typeof xmlStr != "string") return; if (!jQuery.isXMLDoc(this)) return; var node = $.parseXml(xmlStr).firstChild.cloneNode(true); switch (opCode) { case "append": this.appendChild(node); break; case "prepend": if (this.childNodes.length > 0) this.insertBefore(node, this.firstChild); else this.appendChild(node); break; case "after": if (this.nextSibling) this.parentNode.insertBefore(node, this.nextSibling); else this.parentNode.appendChild(node); break; case "before": this.parentNode.insertBefore(node, this); break; } }); } $.fn.extend({ appendXml: function(s) { return mnpXml.call(this, "append", s); }, prependXml: function(s) { return mnpXml.call(this, "prepend", s); }, afterXml: function(s) { return mnpXml.call(this, "after", s); }, beforeXml: function(s) { return mnpXml.call(this, "before", s); }, xml: function() { var elem = this[0]; return elem.xml || (new XMLSerializer()).serializeToString(elem) ; }, innerXml: function() { var s = this.xml(); var i = s.indexOf(">"), j = s.lastIndexOf("<"); if (j > i) return s.substring(i + 1, j); else return ""; } }); $.extend(jQuery, { parseXml: function(xmlStr) { if (window.ActiveXObject) { var xd = new ActiveXObject("Microsoft.XMLDOM"); xd.async = false; xd.loadXML(xmlStr); return xd; } else if (typeof DOMParser != "undefined") { var xd = new DOMParser().parseFromString(xmlStr, "text/xml"); return xd; } else return null; }, toXml: function(obj, nodeName, useAttr) { var x = $($.parseXml("<" + nodeName + " />")); var n = x.find(":first"); for (var p in obj) { if (useAttr) n.attr(p, obj[p]); else n.appendXml("<" + p + " />").find(p).text(obj[p]); } return x[0]; } }); })(jQuery); </script> </body> </html>
運行結(jié)果:
PS:這里再為大家提供幾款關(guān)于xml操作相關(guān)在線工具供大家參考使用:
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
在線格式化XML/在線壓縮XML:
http://tools.jb51.net/code/xmlformat
XML在線壓縮/格式化工具:
http://tools.jb51.net/code/xml_format_compress
xml代碼在線格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery操作xml技巧總結(jié)》、《jQuery擴展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery常見經(jīng)典特效匯總》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設計有所幫助。
相關(guān)文章
jQuery實現(xiàn)鼠標經(jīng)過圖片變亮其他變暗效果
jQuery實現(xiàn)的仿商城圖片變亮變暗效果,鼠標懸停圖片之后該圖片變亮,其他圖片變暗。移開鼠標所有圖片變亮,兼容主流瀏覽器,適用瀏覽器:IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗,有需要的小伙伴可以參考下。2015-05-05『jQuery』.html(),.text()和.val()的概述及使用
如何使用jQuery中的.html(),.text()和.val()三種方法,用于讀取,修改元素的html結(jié)構(gòu),元素的文本內(nèi)容,以及表單元素的value值的方法2013-04-04jQuery使用$.ajax進行異步刷新的方法(附demo下載)
這篇文章主要介紹了jQuery使用$.ajax進行異步刷新的方法,涉及jQuery實現(xiàn)ajax異步刷新實現(xiàn)數(shù)據(jù)交互的相關(guān)技巧,并提供了完整示例demo供讀者下載參考,需要的朋友可以參考下2015-12-12