Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery搜索HTML表_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery搜索HTML表

Javascript 使用jQuery搜索HTML表,javascript,jquery,Javascript,Jquery,我有一个表,需要在特定行中指定一列 <tr></tr> <tr> <td></td> <td></td> <td class="important_column"><a href="/bla/blah/link">IMPORTANT INFO</a></td> <td></td> <td clas

我有一个表,需要在特定行中指定一列

<tr></tr>
<tr>
    <td></td>
    <td></td>
    <td class="important_column"><a href="/bla/blah/link">IMPORTANT INFO</a></td>
    <td></td>
    <td class="need_link_here"><a href="/I/WANT/THIS/LINK/">link</a></td>
</tr>
<tr></tr>

因此,如果“重要专栏”中的链接文本等于我要查找的内容。
获取“此处需要链接”列中的链接文本。

如何使用jQuery

jQuery('.need_link_here a',
    jQuery('.important_column a:contains(IMPORTANT INFO)').parent() 
).attr('href');
变异

$("td.need_link_here a", $("table tr td.important_column a[href=/bla/blah/link]").closest(tr)).attr("href");

您可以使用下一种方法获取已找到项的同级:

$('.important_column').next().next().attr("href")

将选择第二个td元素的href,该元素位于具有class=“important\u column”的js片段之后,该js片段将完成以下操作:

if($('.important_column a').text() == 'SOME TEXT YOU WANT')
{
   $('.important_column a').attr('href', $('.need_link_here a').attr('href'));
}
像这样的

$(function() {
  column_text = $(".important_column a").text();
  if(column_text == "IMPORTANT INFO") {
    link_href = $(".need_link_here a").attr("href");
    alert(link_href);
  }
});

退房。

不清楚OP想要什么。离这儿近吗

$('#myTable tr').each(function ()
{
    var $tr = $(this);
    if($tr.find('td.important_column').text() === 'IMPORTANT INFO')
    {
        alert($tr.find('td.need_link_here > a').attr('href'))
    }
});
您可以使用检查元素是否包含特定文本:

$("table td:contains('IMPORTANT INFO')")
    .next().next()
    .children("a");

示例-

OP写道“如果“重要列”中的链接文本与我要查找的内容相等”,但你只需查看类即可。@snowlord:很好。更正了。@jAndy:好吧,这是一个非常模糊的批评(这并没有说明为什么它“糟糕”或者可以做些什么来改进它)。部分解决方案:你可以用这种方法搜索链接中的文本:我认为“链接文本”这个词在这里会造成一些混乱。你是说href属性还是里面的文本?对不起,如果我弄糊涂了,我指的是1里面的文本。假设类别不重要。2.不检查文本。3.试图获取TD元素的href属性的值。@David Dorward:很明显,“此处需要链接”不会出现在实际页面中,这不是很明显吗?如果是的话,那就很琐碎了……@斯诺洛德:不,这不明显,这个问题有很多解释。甚至不清楚“重要列”类是否会出现。+1因为这是迄今为止唯一一个不使用重要列的答案,需要链接这里的类,我怀疑这些类在实际情况中是否会出现。该死,我错了,重要列被使用了。@snowlord:是的,但不一定是。这里的代码如果没有它也能正常工作。事实上,我刚刚编辑了答案和示例,这样您就可以感觉+1是合理的;-)
$("table td:contains('IMPORTANT INFO')")
    .next().next()
    .children("a");