写一下如何操作Script里面的ActiveX组件的属性与方法,我们必须先稍微涉及MSXMLDOMDocument对象中的loadXML、selectNodes函数及xml属性。
文章在我的小站上的地址:Web Service学习笔记:在Script中操作ActiveX
(1)loadXML函数
从字符串中加载XML文件到XML DOM对象中。
语法:bSucc=XMLDOMDocument.loadXML(strXML);
参数:strXML,符合XML格式的字符串。
返回值:布尔变量,如果所加载字符串为符合XML格式的字符串则返回True,否则返回False。
(2)selectNodes函数
在目前指定查找语法,查找符合的节点,并将结果以及和IXMLDOMNodeList返回。
语法:XMLDOMList=XMLDOMNode.selectNodes(xpathstr);
参数:xpathstr,XPath语法查找字符串
返回值:返回所有符合查找条件的节点所形成的集合对象;若没有符合条件的节点存在,则返回空集合。
(3)xml属性
包含目前节点及其下节点的XML表示式。
语法:strXML=XMLDOMNode.xml;
知道了XML DOMDocumnet对象的一些方法与属性值之后,再来看看在Script中如何操作XML DOM对象。
在下面的例子中,我们就可以感受到在Script中操作XML DOM 对象,就如同在VC或JAVA中操作类的方法与属性一样。我们可以object.methodname的方式来操作对象公开的方法,也可以object.methodname的方式来访问对象的属性值。
<head>
<title>在Script中操作ActiveX组件</title>
</head>
<script language="javascript" type="text/jscript">
alert("测试XML对象")
var xmlobj=new ActiveXObject("Microsoft.XMLDOM")
var bSucc=xmlobj.loadXML(
"<Data><item>项目一</item><item>项目二</item></Data>")
if(bSucc)
{
alert("加载XML成功")
alert("所加载的XML:"+xmlobj.xml)
var items=xmlobj.documentElement.selectNodes("item")
alert("根节点下的节点数:"+items.length)
alert("第二项数据的内容为:"+items.item(1).text)
}
else
{
alert("加载XML失败")
}
</script>
<body>
</body>
</html>
程序的逻辑如下:
(1)以ActiveXObject函数建立XML DOM对象,ProgID为"Microsoft.XMLDOM";
(2)以loadXML函数加载XML字符串到XML DOM对象;
(3)以selectNodes函数枚举合乎查找到条件的节点。在我们的这个例子里是要找出根目录节点之下所有名为"item”的子节点;