【发布时间】:2013-12-03 15:30:35
【问题描述】:
我已经为我的所有报告创建了一个页面,并且我正在使用我制作的工具栏加载这些报告的不同版本(折线、饼图、图表、图形等)。除了非表格类型的图表(折线、饼图、条形图等)外,一切都在那里运行良好。当这些被渲染时,我发现图例和系列中的文本变得模糊,并且通过这里和其他地方的一些研究发现它们被转换为图像,然后通过自动生成的 css 类在我身上调整大小。
首先,我想做的是: 我想从加载时生成的图像中删除此类。如果我在报告中关闭异步渲染
AsyncRendering="false"
连同这段 jquery(针对包含 reportviewer 的 div):
$(document).ready(function () {
$('#reportDiv img').removeAttr('class');
});
那么结果如预期。图像没有缩放,一切都很好。然而,问题是这些报告中的一些可能非常大,导致用户没有任何视觉反馈来判断某事是否正在发生。我想继续使用异步渲染,所以我开始查看reportviewer javascript api。
Sys.Application.add_load(function () {
var reportViewer = $find("ctl00_mainContentPlaceHolder_ReportViewer1");
reportViewer.add_propertyChanged(viewerPropertyChanged);
});
function viewerPropertyChanged(sender, e) {
var viewer = $find("ctl00_mainContentPlaceHolder_ReportViewer1");
if (e.get_propertyName() === "isLoading") {
var button = document.getElementById("ctl00_mainContentPlaceHolder_ctlReportParamModuleId1_btnRunReport");
button.disabled = viewer.get_isLoading();
}
else {
if ($find("ctl00_mainContentPlaceHolder_ReportViewer1").get_reportAreaContent() == Microsoft.Reporting.WebFormsClient.ReportAreaContent.ReportPage) {
alert("here");
}
}
}
第一部分(isLoading)按预期工作,禁用按钮。但是在加载后我立即得到 p>
对象不支持属性或方法'get_reportAreaContent'
我是否遗漏了一些明显的东西?这些是我用来参考的 msdn 的链接:
【问题讨论】:
标签: javascript reporting-services reportviewer