【问题标题】:MSXML.DOMDocument doesn't support any method?MSXML.DOMDocument 不支持任何方法?
【发布时间】:2016-02-04 13:19:18
【问题描述】:
我在使用 MSXML2.DOMDocument ActiveX 对象时遇到了奇怪的问题。这是我的代码:
var doc = new ActiveXObject('MSXML2.DOMDocument.6.0');
doc.LoadXML('<test1><test2>Hello!</test2></test1>');
doc变量的类型是object,代码第一行没有异常。但是第二行抛出该对象不支持该方法。我真的不明白为什么,但似乎任何方法(我尝试了 LoadXML、Load、Async 等)都失败了。
【问题讨论】:
标签:
jscript
activexobject
wsh
【解决方案1】:
您最大的问题是方法名称是loadXML(),而不是LoadXML()。方法名区分大小写。
如果您在试图找出特定 COM 对象支持的方法时遇到困难,您可以使用 PowerShell 列出可用的方法,如下所示:
powershell "new-object -COM MSXML2.DOMDocument.6.0 | gm"
此外,如果您发现使用该字符串导航 DOM 时遇到问题,您可能需要在 <test> 标记之前包含 <?xml version="1.0"?>。 MS 的一些 XML 解析器对有效的、格式良好的 XML 结构持迂腐态度。我不确定MSXML2.DOMDocument.6.0 对此类事情的严格程度或宽容程度。