Как я могу получить <p>элемент в <td>? - PullRequest
0 голосов
/ 24 сентября 2010

Я хочу получить элемент "p", который находится внутри "td".Как я могу получить это?Мой код:

 <td id="mytd"> 
    <p> aaaa </p>
    <p> bbbbb </p>
    <p id="myp"> cccc </p> 
 </td>

Я могу получить тд с помощью.document.getElementById("mytd"), но я не знаю, как получить p с id="myp".

Ответы [ 4 ]

7 голосов
/ 24 сентября 2010

Просто используйте точно такой же код getElementById, но используйте идентификатор <p> вместо <td>:

var p = document.getElementById("myp");
p.style.background = "#000";
p.style.color= "#FFF";

Вот jsFiddle, показывающий, как он работает.

2 голосов
/ 24 сентября 2010

document.getElementById("myp")

Если вы выводите действительный HTML, ваши идентификаторы, которые вы используете для элементов DOM, должны быть уникальными для всего документа.Таким образом, вы можете сделать что-то простое, как это.Если это не сработает (есть больше элементов с этим идентификатором), вместо этого разберитесь с этой проблемой.Идентификаторы должны быть уникальными.

0 голосов
/ 24 сентября 2010

вы также можете попробовать этот jQuery:

var p = $("td#mytd p#myp");

Затем вы можете получить HTML или текст p.html(); or p.text();

Исправление:

Я не думаю, что td#anyid (имя тега является избыточным) необходимо, потому что идентификаторы в документе уникальны, они нужны только в том случае, если вы используете классы, поэтому я думаю, что это следует делать (если вы используете jQuery):

var p = $("#myp"); 
0 голосов
/ 24 сентября 2010

с JQuery

$("p[id$='myp']")
...