`

jQuery 操作 XML(解决大小写问题)

阅读更多
jQuery操作xml时候,不同浏览器会产生大小写不一致的问题, 参考了下网上一些的例子,写的很简单易懂, 简单改了写代码做个标记。

/**
 * @description 
 * 		 Operation of the XML
 * @deprecated 
 * 		JQuery.js
 * @version 1.0
 * Date: 2013-09-16
 */
(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;
        }
    });
})(jQuery);

分享到:
评论

相关推荐

    jQuery+XML+ASP.NET无刷新添加删除数据

    在这个项目中,当用户触发添加或删除操作时,jQuery会发送一个Ajax请求到ASP.NET服务器,服务器端处理请求(例如,更新XML文件),然后返回处理结果。jQuery接收到响应后,再更新DOM以反映数据的变化。 分页功能...

    jquery插件使用方法大全

    jQuery 1.5(2011年1月31日):该版本修复了83个bug,解决了460个问题。重大改进有:重写了Ajax模块;新增延缓对像(Deferred Objects);jQuery替身——jQuery.sub();增强了遍历相邻节点的性能;jQuery开发团队构建...

    jquery 写的图片特效

    jQuery可以帮助我们预先加载图片,防止页面在加载大图时出现闪烁现象: ```javascript function preloadImages(imgs) { $.each(imgs, function(i, img) { $('&lt;img/&gt;')[0].src = img; }); } preloadImages(['...

    js读取xml的例子,个人编程

    - XML文档必须遵循严格的语法规则,如正确关闭标签、元素名区分大小写等。 2. JavaScript与XML的交互: - DOM解析:JavaScript通过DOM解析XML文档,将XML转换为一个节点树。每个XML元素、属性、文本等都对应DOM树...

    自己写的jquery 插件 grid

    【标题】:“自己写的jquery 插件 grid” 【描述】:“自己写的jquery 插件 grid 未完成” 这个项目的标题和描述揭示了它是一个基于jQuery的自定义插件,目标是构建一个类似于表格(grid)的数据展示和管理工具。...

    JSTL与Jquery的小例子

    jQuery的核心理念是“写得更少,做得更多”。通过简短的语法,jQuery可以实现复杂的DOM操作,如选择元素、添加或删除类、改变HTML内容,以及创建优雅的过渡和动画效果。 现在,让我们来看一个小例子,演示JSTL和...

    CSS实现Jquery随机头像

    这个过程涉及到前端开发中的几个关键知识点,包括CSS的选择器、样式设置、JavaScript的基本操作以及Jquery的API使用。 首先,我们要理解CSS(Cascading Style Sheets)的作用。CSS是一种用于描述HTML或XML(包括如...

    Jquery Ajax分页(有实例)

    jQuery,一个轻量级、功能丰富的JavaScript库,结合AJAX(异步JavaScript和XML)技术,可以实现动态、高效的分页效果。本篇文章将深入探讨jQuery AJAX分页的原理与实践,通过具体的实例来展示如何实现炫酷的分页功能...

    jquery多个版本包

    jQuery是一个广泛使用的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画设计和Ajax交互。这个"jquery多个版本包"提供了不同版本的jQuery,让开发者可以根据项目的具体需求选择适合的版本。以下是...

    jQuery随机数字字母验证码特效.zip

    3. **字符集选择**:验证码可能包含数字和字母,这需要定义一个包含0-9和A-Z(大小写)的字符集。然后,随机数生成函数可以从中选取字符,形成验证码字符串。 4. **字符串拼接**:生成的随机字符会被拼接成一个字符...

    最好的 css jquery 桌面 框架

    在IT行业中,前端开发是构建网站用户界面的关键环节,而CSS和jQuery是这一领域不可或缺的工具。本篇文章将深入探讨“最好的CSS jQuery桌面框架”,基于提供的文件名“jQuery-Desktop”,我们可以推测这是一个专为...

    Jquery写的一些js

    在IT行业中,jQuery是一个广泛使用的JavaScript库,它极大地简化了DOM操作、事件处理、动画制作以及Ajax交互。本文将深入探讨jQuery的相关知识点,基于提供的文件列表进行解析。 首先,jQuery的核心理念是“Write ...

    锋利的jQuery源码

    jQuery作为一款广泛使用的JavaScript库,极大地简化了网页DOM操作、事件处理、动画制作以及Ajax交互等任务。这本书的源代码提供了深入理解jQuery工作原理的机会,帮助开发者提升技能并优化自己的代码。 jQuery的...

    jquery autocomplete dwr结合 修改Data

    3. 自定义匹配逻辑:可能需要修改默认的匹配算法,以适应特定的业务规则,比如忽略大小写、考虑部分匹配等。 4. 回调处理:当用户选择了一个建议项后,可能需要执行一些回调函数,比如更新其他表单元素、加载详细...

    jQuery1.4.2.js + jQuery1.4.1.chm API

    jQuery是世界上最流行的JavaScript库之一,它极大地简化了网页的DOM操作、事件处理、动画制作以及Ajax交互。在您提供的资源中,"jQuery1.4.2.js"是jQuery库的一个版本,而"jQuery1.4.1.chm"是该版本的API文档,对于...

    Jquery struts2 json 实现ajax

    首先,jQuery是一个轻量级、功能丰富的JavaScript库,它简化了DOM操作、事件处理、动画效果以及Ajax交互。在Ajax方面,jQuery提供了$.ajax()、$.get()、$.post()等方法,使得发送异步请求变得简单易用。 在Struts2...

    Web编程基础——CSS、JavaScript、jQuery【高清版】

    3. jQuery:jQuery是一个广泛使用的JavaScript库,它简化了JavaScript的DOM操作、事件处理、动画制作和Ajax交互。jQuery的核心理念是"写得更少,做得更多"。通过使用jQuery,开发者可以用更简洁的代码实现复杂的功能...

    XML与WEB Service技术(微软):第04章 JavaScript和jQuery.ppt

    JavaScript 代码是区分大小写的,变量名 "myname" 和 "MyName" 是不同的。此外,用户可以选择禁用 JavaScript,这意味着关键的业务逻辑不应完全依赖客户端脚本。同时,由于 JavaScript 在用户浏览器上执行,其源代码...

    jQuery资源包下载

    jQuery,作为一个广受欢迎的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务,使得开发者可以“写的更少,但做的更多”。这个资源包下载包含了jQuery 2.0.0版本的两个核心文件以及相关...

    CSS Javascript jQuery xHTML XMLHttp W3CSchool w3c标准html5手册

    在IT行业中,前端开发是构建网页和Web应用程序的关键部分,涉及的主要技术包括CSS、JavaScript、jQuery、xHTML、XML以及XMLHttpRequest(通常简称为XHR)。这些技术共同构成了现代Web开发的基础,下面将对它们进行...

Global site tag (gtag.js) - Google Analytics