我有这个脚本来打印一个页面,它没问题。
但是,脚本运行后,浏览器会重定向到文件夹root:
<SCRIPT Language="Javascript">
//PRINT PAGE FUNCTION
function printit(){
if (window.print) {
window.print() ;
} else {
var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
WebBrowser1.ExecWB(6, 2);//Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = "";
}
}
</script>
我怎样才能阻止这种情况发生?我想留在当前页面上!
我无法在Apache上工作,也不能(更重要的是)我的IIS远程服务器。 页面是用PHP编写的。 单击按钮后调用Javascript。按下后,将出现打印页面选项。如果您打印或关闭选项对话框,浏览器会重定向到目录根目录(浏览器列出目录的内容) 希望这是有道理的。
答案 0 :(得分:6)
猜测一下,我怀疑你没有在链接/按钮的onclick事件中返回false。如果单击以下链接:
<a href="/yourrootdirectory" onclick="printit();">Test</a>
当打印对话框关闭时,浏览器仍会导航到链接href。但是,如果你这样做:
<a href="/yourrootdirectory" onclick="printit(); return false;">Test</a>
然后链接的默认操作被取消,您将保持原状。您也可以在printit()
函数体中返回false。