MSXML.DOMDocument不支持任何方法吗?

时间:2016-02-04 13:19:19

标签: jscript activexobject wsh

我遇到了MSXML2.DOMDocument ActiveX对象的奇怪问题。这是我的代码:

var doc = new ActiveXObject('MSXML2.DOMDocument.6.0');
doc.LoadXML('<test1><test2>Hello!</test2></test1>');

doc变量的类型是object,代码的第一行没有异常。但是第二行抛出该对象不支持该方法。我真的不明白为什么,但似乎在任何方法(我尝试使用LoadXML,Load,Async等)上使用相同的消息都失败了。

1 个答案:

答案 0 :(得分:1)

您最大的问题是方法名称为loadXML(),而不是LoadXML()。方法名称区分大小写。

如果您在尝试找出特定COM对象支持的方法时遇到困难,可以使用PowerShell列出可用的方法,如下所示:

powershell "new-object -COM MSXML2.DOMDocument.6.0 | gm"

此外,如果您发现使用该字符串导航DOM时遇到问题,则可能需要在<?xml version="1.0"?>标记之前添加<test>。 MS的一些XML解析器对于有效,格式良好的XML结构很迂腐。我不确定MSXML2.DOMDocument.6.0对这类事情有多严格或宽容。