2012-06-29 2 views
2

Может кто-нибудь мне помочь. У меня есть таблица, содержащая вложенную таблицу в одной из ячеек. Я хочу добавить «привет мир!». к первой ячейке в каждой строке внешней таблицы (так что в нижнем html я хочу добавить только к ячейкам 1a и 2a). Я попытался следующие:JQuery - Прямой ребенок прямого ребенка

$("div > table > tr > td:first-child").append(' Hello World!'); 

на ниже HTML:

<div class="divClass"> 

    <table class="tableClass" border="1px"> 
     <tr> 
      <td>1a</td> 
      <td>1b</td> 
      </tr> 
    <tr> 
      <td>2a</td> 
      <td>2b 
       <table border="1px"><tr><td>nested table cell</td></tr></table> 

      </td> 
    </tr> 
    </table> 

</div>​ 

, но он не работает. (- http://jsfiddle.net/NickyW/x3bqf/)

Любые предложения?

Спасибо,

Ник

ответ

5
$("div > table > tbody > tr > td:first-child").append(' Hello World!'); 

Вам нужно просто использовать tbody потому что он добавил к столу браузера. Это более надежно.

DEMO

+0

@ Ник проверите это и демо – thecodeparadox

+0

+1 для добавления к правильным ячейкам и рабочей демонстрации. – Nope

+0

+1 хороший ответ - я бы не подумал о tbody :) – Dipak

-1

Что вы имеете в виду? Append вы хотите установить значение ячейки в Hello world?

Затем вы должны попробовать его с помощью $ (..). Html ('Hello World'); .

Если ЮО хотите добавить его к 1а для нелогич-:

попробовать это с $ (..) HTML ($ (..) HTML() + "Hello World".);

+0

Использование JQuery 'Append()', чтобы добавить вместо concatonating несколько 'HTML()' вызовов, то есть то, что он предназначен для. – Nope

0

Это очень просто все, что вам нужно сделать, это добавить TBODY, нет необходимости ссылаться на DIV и, пожалуйста, используйте ссылку на класс.

$(function() { 

     $(".tableClass > tbody > tr > td:first-child").append(' Hello World!'); 

    }); 

Solution

Смежные вопросы