function test(){
var perid = document.thisForm.PerID.value;
var xml="test";
if(window.ActiveXObject){
var xml=new ActiveXObject("Microsoft.XMLDOM");
xml.async=false;
xml.load("xxxx.xml");
}else if((typeof document.implementation != 'undefined')&&
(typeof document.implementation.createDocument!='undefined')){
xml = document.implementation.createDocument("", "", null);
xml.async=false;
xml.load("xxxx.xml");
//firefox并不支持selectSingleNode和selectNodes方法;下面两段是用XPath来解决firefox模拟selectSingleNode和selectNodes方法,正确性有待解决
XMLDocument.prototype.selectSingleNode = Element.prototype.selectSingleNode = function (xpath){
var x = this .selectNodes(xpath)
if ( ! x || x.length < 1 ) return null ;
return x[ 0 ];
}
XMLDocument.prototype.selectNodes = Element.prototype.selectNodes = function (xpath){
var xpe = new XPathEvaluator();
var nsResolver = xpe.createNSResolver( this .ownerDocument == null ?
this .documentElement : this .ownerDocument.documentElement);
var result = xpe.evaluate(xpath, this , nsResolver, 0 , null );
var found = [];
var res;
while (res = result.iterateNext())
found.push(res);
return found;
}
}
//下面就可以用selectSingleNode和selectNodes方法
var row=null;
if(perid.substring(0,5)=="NO" && perid.length==9){
row=xml.selectSingleNode("root/row[@ID='"+perid+"']");
if (row!=null){
document.thisForm.MenuColor.value=row.getAttribute("CssFileName");
ChangeBgColor(document.thisForm.MenuColor.value);
}
}
}
分享到:
相关推荐
本文将深入探讨JDOM库中XPath的相关方法——`selectNodes()`和`selectSingleNode()`,以及它们的用法。 首先,我们来理解JDOM的基本概念。JDOM是Java Document Object Model的缩写,它提供了一种基于Java的API来...
在本文中,我们将深入探讨DOM4J库中`selectSingleNode`方法的使用,以及当该方法报错时可能的原因和解决策略。DOM4J是一个强大的Java XML API,它提供了灵活且高效的方式来处理XML文档。`selectSingleNode`是DOM4J中...
为了解决这个问题,我们可以使用`prototype`属性扩展XMLDocument和Element对象,添加自定义的`selectNodes()`和`selectSingleNode()`方法。在提供的代码中,如果浏览器支持XPath,将为XMLDocument和Element对象添加...
例如,IE支持的`selectNodes()`和`selectSingleNode()`方法在Firefox中不可用。在这种情况下,你可以使用`getElementsByTagName()`和`querySelector()`/`querySelectorAll()`作为替代。 6. `show.js`中的实现 文件`...
#### 通过Prototype属性解决SelectNodes方法和SelectSingleNode方法的浏览器兼容性问题 在不同的浏览器中,XPath的实现可能存在差异,特别是在早期版本的浏览器中。为了统一接口并提供一致的行为,可以通过扩展 `...
例如,使用XmlNode的SelectSingleNode或SelectNodes方法找到目标节点,再通过SetAttribute方法修改属性,或者ReplaceChild方法替换子节点。 序列化是将对象转换为XML的过程,C#提供System.Xml.Serialization命名...
此外,IE支持`selectNodes()`和`selectSingleNode()`方法,而其他浏览器则不支持。 5. **XML序列化** 如果需要将处理过的XML数据返回到字符串,可以使用`XMLSerializer`对象的`serializeToString()`方法。但请注意...
C# 读取 带 xmlns 命名空间 XML 结点 SelectSingleNode 类 For .NET Framework 1.1x AutoPrefix(System.Xml.XmlNode xNode, System.Xml.XmlNamespaceManager xNameSpaceManager) AutoXPath(System.Xml.XmlNode ...
3. 查询XML文档中的节点,可以使用`selectNodes`或`selectSingleNode`方法,配合XPath表达式找到特定节点。 4. 获取或修改节点的属性和内容,通过`getAttribute`和`setAttribute`方法改变属性值,`getText`和`...
selectSingleNode:根据XPath选择单个节点。 selectNodes:根据XPath选择多个节点。 全部代码(zyllibjs_xml.js)—— 代码如下: /* zyllibjs_xml XML处理 @author zyl910 注意—— 1. Chrome 由于其安全机制限制, ...
- **查找Element**:使用selectSingleNode或selectNodes方法,配合XPath表达式来查找特定元素。 5. **XPath支持** DOM4J内置了对XPath的支持,允许我们以简洁的方式定位XML文档中的任何部分。例如,`//...
- 选择节点:使用SelectSingleNode或SelectNodes方法可以按照节点路径来选择XML文档中的节点。比如,XmlNode root = xmlDoc.SelectSingleNode("bookstore"); 是选择XML文档中的根节点。 - 创建新元素:CreateElement...
XMLDOM(XML Document Object Model)是...不过,需要注意的是,XMLDOM主要是在Internet Explorer中使用,对于其他浏览器,如Firefox、Chrome等,可能需要使用不同的API,如DOMParser或XMLHttpRequest来解析和操作XML。
在C#中,可以使用XmlNode的SelectSingleNode或SelectNodes方法找到目标节点,然后调用InnerXml或InnerText属性进行修改。对于LINQ to XML,可以使用XPath查询或者LINQ查询表达式定位到节点,再进行更新。 五、XML的...
- **XPath 查询**:实例化 `XPath` 对象,使用 `selectNodes()` 或 `selectSingleNode()` 方法进行查询。 - **修改 XML**:获取到目标节点后,可以调用 `remove()`, `addAttribute()`, `setText()` 等方法进行修改...
可以使用SelectSingleNode()方法或SelectNodes()方法来寻找XML文档中的某个节点,例如可以使用SelectSingleNode()方法来寻找名称为“name”的节点。 删除节点 可以使用RemoveAll()或RemoveChild()方法删除XML文档...
dom4j 提供了内置的 XPath 支持,可以通过 Element 或 Document 对象的 selectSingleNode() 和 selectNodes() 方法使用。例如,要找到所有 article 元素,可以使用以下代码:List<ArticleElement> articleElements =...