jQuery不替换ReportViewer中的文本

时间:2010-05-17 06:26:19

标签: jquery jquery-selectors reportviewer reportviewer2008

我正在尝试使用jQuery替换我在ReportViewer中返回的文本。我的div包含在表格单元格中,显示为“空”作为文本 - 我计划在客户端替换为我自己的格式化文本。

我可以使用jQuery就可以在div上设置一个类(在td元素中)。例如:

jQuery('div:contains("empty")').addClass('replacetext');

但出于某种原因,我不能这样做:

jQuery('div:contains("empty")').replaceWith('<div>Hello World</div>');

我在页面上的其他一些元素上尝试了这一点,jQuery确实有效......但似乎这个问题是ReportViewer(我使用的是2008)特定的。

1 个答案:

答案 0 :(得分:0)

我遇到的关键问题与问题有点不同。

我设置类的方式 - 选择器是通用的,表格嵌套了div和表格和行。其中许多都是不必要的,但在ReportViewer上却要归咎于此。

所以解决方案是特异性,这是我用来在非常精细的级别选择级别的方法:

jQuery(document).ready(function() {
    jQuery('#container table table div:contains("empty")').addClass('persistent');
});

我使用了一种风格来标记有罪,因为我对使用IE6感到恐惧并且开发工具栏与firebug不相上下。

.persistent {
    background-color: Yellow;   
}

很难确定错误,因为我在脚本的顶部有另一个jQuery,我没有注意到它弄乱了逻辑。