gpt4 book ai didi

javascript - 带有 getElementsByTagName 的嵌套标签名称不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 15:31:46 25 4
gpt4 key购买 nike

我有以下包含表及其从数据库查询的数据的 div

<div id="content">
<table>
<tbody>
<tr>
<th class="header" colspan="2">Food items include:</th>
</tr>
<tr>
<td id="15" class="fruits">Papaya+salt</td>
<td><p>This includes papaya and salt</p></td>
</tr>
<tr>
<td class="meat">Baked chicken</td>
<td><p>This includes a chicken thide and kethup</p></td>
</tr>
<tr>
<td id="1" class="Juices">Strawberry Sting</td>
<td><p>Sugar, color and water</p></td>
</tr>
<table>
</div>

该表在 page.aspx 中定义

这是我用来按字母顺序对表格数据进行排序的代码

OldFunc = window.onload;
window.onload = OnLoad;

function OnLoad(){
try{
var pathName = window.location.pathname.toLowerCase();
if( pathName=="/Resources/Glossary.aspx") {
sort_it();
}
OldFunc();
}
catch(e) {
}
}

function TermDefinition(def_term,def_desc)
{
this.def_term=def_term;
this.def_desc=def_desc;
}

function sort_it()
{
var gloss_list=document.getElementsByTagName('td');
var desc_list=document.getElementsByTagName('td p');
var gloss_defs=[];
var list_length=gloss_list.length;
for(var i=0;i<list_length;i++)
{
gloss_defs[i]=new TermDefinition(gloss_list[i].firstChild.nodeValue,desc_list[i].firstChild.nodeValue);
}
gloss_defs.sort(function(a, b){
var termA=a.def_term.toLocaleUpperCase();
var termB=b.def_term.toLocaleUpperCase();
if (termA < termB)
return -1;
if (termA > termB)
return 1;
return 0;
})
for(var i=0;i<gloss_defs.length;i++)
{
gloss_list[i].firstChild.nodeValue=gloss_defs[i].def_term;
desc_list[i].firstChild.nodeValue=gloss_defs[i].def_desc;
}
}

请查看两个 getElementsByTagName,我认为我滥用了它的内容,因为没有对输出进行任何操作。

最佳答案

无效:

desc_list=document.getElementsByTagName('td p');

您不能将 css 选择器传递给该函数,只能传递一个标签名称,如 div\span input 等。

你可能想使用:

desc_list = $('td p');

由于您使用 jQuery 或 document.querySelectorAll 标记了普通 js 的问题:

desc_list = document.querySelectorAll('td p');

关于javascript - 带有 getElementsByTagName 的嵌套标签名称不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13340525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com