如何在 IE 中选择没有 colspan 的 th

发布于 2024-09-13 22:32:50 字数 162 浏览 2 评论 0原文

我正在使用此代码来获取所有没有 colspan 的表头。它仅适用于 Firefox 和 Chrome,但不适用于 IE。 IE 的等效代码是什么?谢谢。

$tableHeaders = $("thead th:not([colspan])", table);

I am using this code to get all the tableheads which do not have colspan. It only works in firefox and chrome, but not in IE. What is the equivalent code for IE? thanks.

$tableHeaders = $("thead th:not([colspan])", table);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清泪尽 2024-09-20 22:32:50

这与一个已知错误有关:http://bugs.jquery.com/ticket/7234

这就是我想出的,有一个跨浏览器的解决方法:

兼容 IE7、IE8、IE9、FF4、Chrome、Opera11:

.filter(":not([colspan]),[colspan='1']")

但要小心,这也会选择 td/th 单元格,其 colspan 属性手动设置为 1,喜欢 ...
[这不会附加在我的代码中,因为如果设置为值 1,我会删除 colspan 属性]

所以我猜这就是您正在寻找的:

$tableHeaders = $("thead > th", table).filter(":not([colspan]),[colspan='1']");

注意我添加了一个“>”到第一个选择器,以避免选择您可能拥有的其他内容(表头内的表,为什么不呢?)。

This is related to a known bug: http://bugs.jquery.com/ticket/7234

This is what I come up with, to have a cross-browser workaround:

Compatible IE7,IE8,IE9,FF4,Chrome,Opera11:

.filter(":not([colspan]),[colspan='1']")

But be carreful, this will also select td/th cells with a colspan attribute setted manually to 1, like ...
[This doesn't append in my code because I remove the colspan attribute if setted to value 1]

So I guess this is what you're looking for:

$tableHeaders = $("thead > th", table).filter(":not([colspan]),[colspan='1']");

Notice I've added a '>' to the th selector to avoid selecting other th you might have inside (table inside your table header, why not?).

行雁书 2024-09-20 22:32:50

尝试:

$tableHeaders = $("#table_id th:not(:has(colspan))");

更多:

http://api.jquery.com/has-selector/

Try:

$tableHeaders = $("#table_id th:not(:has(colspan))");

More:

http://api.jquery.com/has-selector/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文