Javascript 如何获得<;p>;a<;td>;?
我想得到一个“p”元素,它在一个“td”里面。我怎样才能得到它?我的代码是:Javascript 如何获得<;p>;a<;td>;?,javascript,getelementbyid,Javascript,Getelementbyid,我想得到一个“p”元素,它在一个“td”里面。我怎样才能得到它?我的代码是: <td id="mytd"> <p> aaaa </p> <p> bbbbb </p> <p id="myp"> cccc </p> </td> aaaa bbbbb 中交所 我可以用它来获取tddocument.getElementById(“mytd”),但我不知道如何使用id=“m
<td id="mytd">
<p> aaaa </p>
<p> bbbbb </p>
<p id="myp"> cccc </p>
</td>
aaaa
bbbbb
中交所
我可以用它来获取td
document.getElementById(“mytd”)
,但我不知道如何使用id=“myp”
获取p,只需使用完全相同的代码getElementById
,但使用的id而不是:
document.getElementById(“myp”)
如果输出有效的HTML,则用于DOM元素的ID对于整个文档应该是唯一的。因此,您可以做像这样简单的事情。如果这不起作用(获得了更多具有此ID的元素),请处理该问题。ID应该是唯一的。使用jQuery
$("p[id$='myp']")
您也可以尝试以下jQuery:
var p = $("td#mytd p#myp");
然后你可以得到html或textp.html();或p.text()代码>
更正:
我不认为td#anyid
(标记名是多余的)是必要的,因为ID在文档中是唯一的,只有在使用类时才需要这些ID,所以我认为应该这样做(如果使用jQuery,即):
在文档的其他部分中是否有另一个id为“myp”的元素?id对于整个文档必须是唯一的,否则getElementById()可能无法工作。为什么不document.getElementById(“myp”)代码>工作?怎么了?它返回的是什么?我不知道是怎么回事,但我这样做时它没有得到“p”的值。@novellino:我想你想要的是:var p=document.getElementById(“myp”).innerHTML
@novellino-您想要p的内容吗?还是希望从DOM中获得实际的p元素?根据@captaintokyo的评论更新了我的答案。事实上,我想要得到p元素,以便改变它的样式。@novellino-它应该是:var p=document.getElementById(“myp”)代码>。那么到底是什么不起作用呢?怎么了?我更新了我的答案,并为您提供了一个工作示例。a)输入错误(您选择的是“a”元素而不是“p”)b)字符串末尾选择器有什么用?c) 为什么要使用属性选择器(为什么不仅仅是$('#myp')?)d)asker没有提到jQuery e)这是jQuery,不是jQuery;-):是的。。。我的错。。。a->p和关于在Jquery中只选择id和元素->id的讨论是我不想在这里打开的。。。
var p = $("td#mytd p#myp");
var p = $("#myp");