Javascript 如何从HTML标记中获取子标记信息
我有以下代码:Javascript 如何从HTML标记中获取子标记信息,javascript,html,Javascript,Html,我有以下代码: <ul id="menu"> <li id = 1><a href="http://google.com" >Link</a></li> <li id = 2><a href="http://http://stackoverflow.com/" >Link</a></li>
<ul id="menu">
<li id = 1><a href="http://google.com" >Link</a></li>
<li id = 2><a href="http://http://stackoverflow.com/" >Link</a></li>
</ul>
<script>
for (var i = 1; i < 3; i++)
{
var element = document.getElementById(i);
var liLink = document.getElementById(i).childNodes[0].baseURI;
console.log(liLink );
}
</script>
预计:
"http://google.com"
"http://http://stackoverflow.com/"
但是,当我记录元素时,我可以看到childNodes[0].baseURI是不同的。
你能告诉我怎么了吗
谢谢,
Zhenya您需要读取href属性,而不是baseURI
<ul id="menu">
<li id="1"><a href="http://google.com" >Link</a></li>
<li id="2"><a href="http://http://stackoverflow.com/" >Link</a></li>
</ul>
<script>
for (var i = 1; i < 3; i++)
{
var element = document.getElementById(i);
var liLink = document.getElementById(i).childNodes[0].getAttribute('href');
console.log(liLink );
}
</script>
对于(变量i=1;i<3;i++)
{
var元素=document.getElementById(i);
var liLink=document.getElementById(i).childNodes[0].getAttribute('href');
console.log(liLink);
}
您需要读取href属性,而不是baseURI
<ul id="menu">
<li id="1"><a href="http://google.com" >Link</a></li>
<li id="2"><a href="http://http://stackoverflow.com/" >Link</a></li>
</ul>
<script>
for (var i = 1; i < 3; i++)
{
var element = document.getElementById(i);
var liLink = document.getElementById(i).childNodes[0].getAttribute('href');
console.log(liLink );
}
</script>
对于(变量i=1;i<3;i++)
{
var元素=document.getElementById(i);
var liLink=document.getElementById(i).childNodes[0].getAttribute('href');
console.log(liLink);
}
您的代码应该是这样的
for (var i = 1; i < 3; i++)
{
var element = document.getElementById(i);
var liLink = document.getElementById(i).childNodes[0];
console.log(liLink.href);
}
for(变量i=1;i<3;i++)
{
var元素=document.getElementById(i);
var liLink=document.getElementById(i).childNodes[0];
console.log(liLink.href);
}
选中此项您的代码应该如下所示
for (var i = 1; i < 3; i++)
{
var element = document.getElementById(i);
var liLink = document.getElementById(i).childNodes[0];
console.log(liLink.href);
}
for(变量i=1;i<3;i++)
{
var元素=document.getElementById(i);
var liLink=document.getElementById(i).childNodes[0];
console.log(liLink.href);
}
选中此项:“HTML中元素的基本URL通常等于节点所在文档的基本URL。”和“文档的基本URL默认为文档的地址(由浏览器显示并在窗口中可用。位置
)”。我假设您想访问href
属性。是否可以尝试console.log(document.getElementById(I).childNodes[0].baseURI);?:“HTML中元素的基本URL通常等于节点所在文档的基本URL。”和“文档的基本URL默认为文档的地址(由浏览器显示并在窗口中提供。位置
)”。我假设您想访问href
属性。您能试试console.log(document.getElementById(I.childNodes[0].baseURI)?