为WebViewer添加打印和导出功能
当WebViewer选择HtmlViewer浏览方式时,仅需添加以下代码就可以增加打印和导出功能。源码下载:
<script language="javascript" type="text/javascript" src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(".arvToolBar").append("<span style='margin-right:5px;'><input id='btnPrint' type='Button' value='打印' onclick='OnPrint()'/></span>");
$(".arvToolBar").append("<span style='margin-right:5px;'><input id='btnExportPDF' type='Button' value='PDF' onclick='OnExportPDF()'/></span>");
$(".arvToolBar").append("<span style='margin-right:5px;'><input id='btnExportWord' type='Button' value='Word' onclick='OnExportWord()'/></span>");
$(".arvToolBar").append("<span style='margin-right:5px;'><input id='btnExportExcel' type='Button' value='Excel' onclick='OnExportExcel()'/></span>");
});
function OnExportPDF() {
var viewModel = GetViewModel('WebViewer1');
if (!viewModel.PageLoaded())
return;
viewModel.Export(ExportType.Pdf, function (url) {
try {
window.open(url, '_blank');
} catch (e) {
}
}, true, { FileName: 'ActiveReports报表.pdf' });
};
function OnPrint() {
var viewModel = GetViewModel('WebViewer1');
if (!viewModel.PageLoaded())
return;
viewModel.Print();
};
function OnExportWord() {
var viewModel = GetViewModel('WebViewer1');
if (!viewModel.PageLoaded())
return;
viewModel.Export(ExportType.Word, function (url) {
try {
window.open(url, '_blank');
} catch (e) {
}
}, true, { FileName: 'ActiveReports报表.doc' });
};
function OnExportExcel() {
var viewModel = GetViewModel('WebViewer1');
if (!viewModel.PageLoaded())
return;
viewModel.Export(ExportType.Xls, function (url) {
try {
window.open(url, '_blank');
} catch (e) {
}
}, true, { FileName: 'ActiveReports报表.xlsx' });
};
</script>
:hjyzw: 求教,用ar11在ie下文件打印为何变为到处PDF文件了,, 你好!您现在的情况是谷歌打印正常,但是用IE浏览器打印就会先变成PDF文件,然后才能在PDF下打印是吧!
首先这是由于我们的打印调用的是浏览器的打印,不同浏览器的内部打印逻辑是不同的,但是打印最根本的原理都是先保存为PDF文件,然后在进行打印。
在AR9以前IE浏览器上打印是不会弹出说的PDF文件,但是由于我们检测不到在IE浏览器上是否安装Adobe插件,如果没有安装点击打印就不会有任何反应。然后在AR10和AR11上就修改了IE的打印逻辑,这样至少我们可以进行文件的保存和打印。 :lol 点击打印没有反应,需要安装打印插件吗 点击没有反应,你换一个浏览器看看,使用IE浏览器试试
页:
[1]