替换 jQuery 中锚标记的值

replace the value of anchor tags in jquery

本文关键字:jQuery 替换      更新时间:2023-09-26

>我有以下html我需要遍历每个锚标签并检查锚标签值是否为 APL

$('a').text()="APL"

如果值等于 APL,我需要删除"状态"列上的超链接。

有没有我可以遍历所有锚标签并删除超链接标签

<table>
  <tbody>
    <tr>
      <th scope="col">Id</th>
      <th scope="col">Class</th>
      <th scope="col">Status</th>
    </tr>
    <tr>
      <td>185</td>
      <td>1</td>
      <td>
        <DETAIL</td>
          <td><a href="Detail.aspx?id=185" target="_blank">APL</a>
          </td>
    </tr>
    <tr>
      <td>186</td>
      <td>2</td>
      <td>
        <DETAIL</td>
          <td><a href="Detail.aspx?id=185" target="_blank">DDL</a>
          </td>
    </tr>
    
  </tbody>
</table>

你需要使用

1)过滤功能,获取具有文本作为APL的锚元素。

2)以及用于删除属性href.removeAttr()

$(function(){
  $('a').filter(function(){
    return $(this).text().trim() === "APL" ;
  }).removeAttr("href");
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<table>
  <tbody>
    <tr>
      <th scope="col">Id</th>
      <th scope="col">Class</th>
      <th scope="col">Status</th>
    </tr>
    <tr>
      <td>185</td>
      <td>1</td>
      <td>
        <DETAIL</td>
          <td><a href="Detail.aspx?id=185" target="_blank">APL</a>
          </td>
    </tr>
    <tr>
      <td>186</td>
      <td>2</td>
      <td>
        <DETAIL</td>
          <td><a href="Detail.aspx?id=185" target="_blank">DDL</a>
          </td>
    </tr>
    
  </tbody>
</table>

$('a') 可能是

此类函数的一个相当大的选择器,但以下内容有效。

$('a').each(function(){
    if ( $(this).text() == 'APL' ) {
        $(this).removeAttr('href');
    }
});

https://jsfiddle.net/v8qr2vgL/