`

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以反映数据的变化。 分页功能...

    WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptRes

    请添加一个名为 jquery (区分大小写)的 ScriptResource”。这个问题通常出现在尝试使用ASP.NET内置的无侵入式验证(Unobtrusive Validation)时,由于系统找不到jQuery库的引用,因此导致验证功能无法正常工作。下面...

    jquery-3.1.1.min_javascript_jquery_

    jQuery 的出现极大地简化了跨浏览器的JavaScript编程,它有效地解决了不同浏览器之间的兼容性问题,使得开发者可以专注于编写业务逻辑,而不是解决底层技术细节。 **jQuery 主要功能** 1. **DOM 操作**:jQuery ...

    5天驾驭jQuery教程 带书签版

    通过实践小项目,加深对jQuery功能的理解和运用,最终达到能够熟练运用jQuery解决实际问题的目标。 总之,“5天驾驭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(包括如...

    js-xml.rar_javascript_javascript xml_js xml_js解析xml_xml js

    jQuery库简化了JavaScript的XML处理,提供了如`$.parseXML()`, `$()`, `find()`, `children()`, `each()`等方法,使得XML操作更加简洁。 8. XML与JSON: 虽然XML用于数据交换,但JSON(JavaScript Object ...

    Jquery Ajax分页(有实例)

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

    jquery多个版本包

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

    15天学会jquery(完整版).pdf

    通过简化HTML文档遍历、事件处理、动画以及Ajax交互等常见功能的操作,jQuery极大地提升了Web开发者的效率,让原本复杂的JavaScript编程变得简单且高效。 在本教程中,我们将详细介绍如何在15天内快速掌握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...

Global site tag (gtag.js) - Google Analytics