-1

我正在尝试在 IE 中查找表格单元格的 colspan,但仅限于 colspan 不是 1 的地方。这是我正在使用的选择器,但必须有更好的方法。我怎样才能做到这一点?

if (isIE) {
   selector = "> tbody > tr > td[colspan*='0'],> tbody > tr > td[colspan*='11'],> tbody > tr > td    [colspan*='2'],> tbody > tr > td[colspan*='3'],> tbody > tr > td[colspan*='4'],> tbody > tr >     td[colspan*='5'],> tbody > tr > td[colspan*='6'],> tbody > tr > td[colspan*='7'],> tbody > tr     > td[colspan*='8'],> tbody > tr > td[colspan*='9']"
   isSpanned = $(tbl).find(selector).length > 0;
} 
4

2 回答 2

0
 [attributename*="val"]

此选择器表示具有“attributename”属性的元素,其值至少包含子字符串“val”的一个实例。维基

查看您的代码,我看到您正在寻找 if <td>has attribute colspan,所以这样做:

selector = "table tr td[colspan]"

table没有colspan属性,只有thtd

编辑

看看这个链接,也许这会解决你的问题。

示例如何执行:

 $("table tr td").each(function(i) { 
    isSpanned = this.colSpan > 1 ?true:false;
 }); 
于 2013-01-23T15:35:03.360 回答
0

听起来您正在寻找colspan设置为除 1 之外的任何值的表格单元格。所以您真正需要的是jQuery中的属性不相等选择器:

selector = '> tbody > tr > td[colspan!="1"]'

如果您希望它在非 IE 浏览器中工作,并非每个浏览器td都有colspan,您可以使用它td[colspan][colspan!="1"]来强制存在colspan属性。

在 jsFiddle 上测试:http: //jsfiddle.net/jmorgan123/69qw9/

于 2013-01-23T18:43:38.847 回答