【问题标题】:How can get the HTML of an anchor selected by its text string?如何获取通过其文本字符串选择的锚点的 HTML?
【发布时间】:2015-01-03 05:37:30
【问题描述】:

有没有办法在 jQuery 中获取内容背后的代码,例如 <a href="http://www.example.com" class="link">Text</a>

所以我需要类似的东西:if ($(".link").text() == "Text"){alert("<a href="http://www.example.com" class="link">Text</a>");}

问题是我需要从页面中获取来自alert(); 的文本,也许还有一些之前的代码。

【问题讨论】:

  • 不清楚你在问什么。您想从警报中捕获某些内容吗?
  • 我想获取整个链接的 html 代码,使用他的内容作为标识符。我需要得到: example.com">Text</a> 作为使用 Text 作为标识符的输出。

标签: jquery html text hyperlink href


【解决方案1】:

鉴于此链接:

<a href="http://www.example.com" class="link">Text</a>

... 你可以像这样得到它的 HTML:

var myLink = $('a:contains("Text")')[0].outerHTML;

...然后随心所欲地使用它。

alert(myLink);

Demo

Read more


以下是获取锚的父元素的方法:

var myLink = $('a:contains("Text")').parent()[0].outerHTML;

Demo


Aaaaaa 并且,要向外部元素添加一个类,您可以这样做:

var myLink = $('a:contains("Text")').parent();

$(myLink).addClass('my-class');

var myLinkHtml = $(myLink)[0].outerHTML;

Demo

【讨论】:

  • 这非常接近我的需要,但是有没有办法获得更多代码,例如
    example.com" class="link" >文字
  • 不幸的是,这不是我想要的。
  • 所以你也想要父元素?或者您想在链接 HTML 中添加一个元素?
  • 类似的东西,如果可能的话,我可以举一个例子来说明如何获得一个或多个链接的父母吗?所以它不可能得到我想要的代码?
  • 就像,我需要一个链接的父 div,我需要向该 div 添加一个类。
【解决方案2】:

获取id为my-link的元素的html:

$("#my-link")[0].outerHTML

工作示例:http://jsfiddle.net/jwnace/57en1v9s/

获取文本为sample text的元素的html:

$("a:contains('sample text')")[0].outerHTML

工作示例:http://jsfiddle.net/jwnace/z3ymh84c/

【讨论】:

  • 我不需要获取 href 属性的值,我需要获取完整的 HTML 代码,例如 (example.com">Text</a>)
  • 感谢您的澄清,我更新了我的答案和示例以反映您所说的内容。
  • 是的,就是这样,现在我可以获取代码并且它是父级,有没有办法给他的父级添加一个类?
【解决方案3】:

如果是这样的链接:

<a href="#" class="link">Text</a>

你可以的

if ($(".link").html()=="Text") {
    alert("Text");
}

【讨论】:

    【解决方案4】:

    你可以使用contains选择器:

    if($('.link:contains("Text")')){
      alert("Text");
    }
    

    【讨论】:

    • OP 要求的是链接的 HTML,而不是它的文本值。
    猜你喜欢
    • 1970-01-01
    • 2018-05-13
    • 2021-08-07
    • 2020-11-19
    • 1970-01-01
    • 1970-01-01
    • 2013-08-13
    • 1970-01-01
    • 2019-12-18
    相关资源
    最近更新 更多