0

我试图只操纵这两个 TD。有大量嵌套表位于无法更改的非常旧的代码上。

该表没有类。但我能看到的主要结构是这样的。

<table>
  <tr>
    <td class="nowrap" "bunch of inline stuff"></td>
    <td "bunch of inline stuff">
  </tr>
</table>

这就是我能看到的。其余的就在里面,我真的不在乎,但它都是嵌套的表。

我希望能够仅更改这两个 td 的所有“内联内容”,但我似乎尝试的所有内容都通过嵌套的内容运行。

任何帮助,将不胜感激。如果你能告诉我我做错了什么,那就太好了。

这是我已经尝试过的一切

//$('#main_content_wrapper table:first tbody tr td:nth-child(1)').attr('width','240').attr('id','ezweb_lhr').css('background','lime');
//$("#main_content_wrapper table:first td:nth-child(1)").attr('width','240').attr('id','ezweb_lhr').css('background','lime');
//$("#main_content_wrapper table:first tr:nth-child(1) td:nth-child(1)").attr('width','240').attr('id','ezweb_lhr').css('background','lime');
//$("#main_content_wrapper table tr:nth-child(1) td:nth-child(2)").attr('width','680').attr('id','ezweb_content').css('padding-left','20px').css('background','red');
4

3 回答 3

1

这将返回td's第一个表中的所有内容:

$("main_content_wrapper table:first").find("tr:first").find('td'); 

完整的选择:

$("#main_content_wrapper table:first").find("tr:first").find('td')
    .attr({
        'width': '240',
        'id' : 'ezweb_1hr'
    }).css('background','lime');

这是一个工作示例:jsFiddle

于 2012-09-10T16:38:38.580 回答
0

你可以试试这个

$("#main_content_wrapper table:first").find("td")

这将为您提供一个包含第一个表内 td 的所有元素的数组,该表位于 id 为“main_content_wrapper”的元素内。使用索引,您可以找到它是第一还是第二。例如,要访问第 n 个 td 元素,请使用

var nth_elem = $("#main_content_wrapper table:first").find("td")[n-1]

记住 ':nth-child' 选择器在 IE7 和 IE8 中不起作用

谢谢

于 2012-09-10T16:35:10.200 回答
0

基本上使用了第二个 TD 中唯一的另一部分,即行内宽度。所以对于其他可能经历过这个的人来说,这就是我使用的。

$("#main_content_wrapper table:first tbody tr:first td[width='647']")
于 2012-09-11T13:15:42.863 回答