var ReportTable = $('#VisibleReportContentReportViewer1_ctl10');
if (ReportTable.html().length > 0) {
}
VisibleReportContentReportViewer1_ctl10 是报表控件生成的客户端ID, 在IE9环境下运行if代码块就会提示无法获取length属性,更何况别的同时运行这个页面是没有问题的。 难道是vs的问题?
------解决方案--------------------
一般判断是否存在是这样用的
if (ReportTable.length > 0) {
}
或者
if (ReportTable.length) {
}
这样肯定不会报错
------解决方案--------------------
对象不存在或者还未生成,调用html得到null,对null对用length当然报错
$(function(){
var ReportTable = $('#VisibleReportContentReportViewer1_ctl10');
if (ReportTable.html().length > 0) {
}
});
报错现象我的理解的,只是这几句代码是我们平时通用的模式,别的同事并没有遇到这个问题,而我遇到了,类似还有其他问题,我在考虑是不是我js环境或者别的环境有问题。多谢showbo指教。
最好放到load事件中获取对象时最保险的,放到DOM对象下面,有些时候也会出错,可能和浏览器渲染有一定关系吧