2011-06-14 75 views
0

我想使用JavaScript(在网页上)来插入一些文本到Microsoft Word文档中插入文本。 The Documentation具有用于VB和C#代码示例,但还没有为JavaScript(JScript中)。我已经能够找出使用代码样本as seen here很多,但一定行搞乱了我。Microsoft Word中 - 从JavaScript/JScript中的ActiveX

以下是我到目前为止:

var retText;

var wshShell = new ActiveXObject("WScript.Shell"); 
var wordApp = new ActiveXObject("Word.Application"); 
wordApp.Documents.Add(); 

if (wordApp.Application.Options.Overtype) { 
    wordApp.Options.Overtype = false; 
} 

但是,当涉及到这条线(在C#),我不能完全得到如何翻译它:

if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP) 

currentSelection.Type可以在我上面的代码被翻译为wordApp.Selection.Type,但我不知道该怎么办Word.WdSelectionType.wdSelectionIP

一些失败的尝试:

alert(wordApp.WdSelectionType); //undefined 
alert(new ActiveXObject("Word.WdSelectionType"); //errors out 
alert(wordApp.ActiveDocument.WdSelectionType); //undefined  
+0

出于安全原因,你不能这样做。 – SLaks 2011-06-14 01:50:53

+0

@SLak我们的Intranet上的安全性被降低了;我们已经有一些基于Word.Basic API的文本插入代码,但是我认为我需要一些不能用于那个的功能。还是有关于WdSelectionType的东西的单独的安全角色? – jtpereyda 2011-06-14 14:25:24

回答

1

我不认为COM枚举是从Javascript访问。

相反,你可以使用常数的数值,您可以在VBA对象浏览器找到。
对于可读的代码,你可以做一个JavaScript变量holdign的价值,而不是仅仅写一个数字。

+0

无赖。谢谢,虽然;我想我并不需要太担心。顺便说一下,这个对象浏览器非常酷。 – jtpereyda 2011-06-14 14:33:07