Javascript 对象没有';t支持属性或方法';ExecWB';尝试调用IE9中的打印预览对话框时
我正在为IE9编写一个web应用程序,需要打开“打印预览”对话框(不是window.Print(),而是可以设置页边距等的对话框) 我在这个问题中找到了这个代码-:Javascript 对象没有';t支持属性或方法';ExecWB';尝试调用IE9中的打印预览对话框时,javascript,internet-explorer,internet-explorer-9,ole,print-preview,Javascript,Internet Explorer,Internet Explorer 9,Ole,Print Preview,我正在为IE9编写一个web应用程序,需要打开“打印预览”对话框(不是window.Print(),而是可以设置页边距等的对话框) 我在这个问题中找到了这个代码-: 函数PrintPreview() { var-mdid=7; /*MDID值: *6-打印 *7-打印预览 *0-打开窗口 *4-另存为 */ var PROMPT=1;//1提示用户2不提示用户 var WebBrowser=''; window.document.body.insertAdjacentHTML('beforeEn
函数PrintPreview()
{
var-mdid=7;
/*MDID值:
*6-打印
*7-打印预览
*0-打开窗口
*4-另存为
*/
var PROMPT=1;//1提示用户2不提示用户
var WebBrowser='';
window.document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
WebBrowser1.ExecWB(OLECMDID,提示符);
WebBrowser1.outerHTML=“”;
}
但是,这条线失败了:
WebBrowser1.ExecWB(OLECMDID,提示符)代码>
IE9和IE11中的错误消息如下:
“对象不支持属性或方法'ExecWB'”
更新:更多测试表明,该代码在某些IE9/IE11浏览器(例如在我的机器上)中有效,但在Azure VM内的浏览器和我客户的配置上无效
WebBrowser1不是空的,有很多属性和方法,比如正确的classid
,但没有ExecWB()
方法。如果将此选项设置为“Disabled”,则代码不起作用在IE工具中
=>互联网选项
=>安全
=>安全设置
:
function PrintPreview()
{
var OLECMDID = 7;
/* OLECMDID values:
* 6 - print
* 7 - print preview
* 0 - open window
* 4 - Save As
*/
var PROMPT = 1; // 1 PROMPT USER 2 DON'T PROMPT USER
var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
window.document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
WebBrowser1.ExecWB(OLECMDID, PROMPT);
WebBrowser1.outerHTML = "";
}