替换jquery中锚标签的值

时间:2016-03-17 14:06:56

标签: javascript jquery html

我有以下HTML 我需要浏览每个锚标记并检查锚标记值是否为APL

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

如果value等于APL,我需要删除Status列上的超链接。

我是否可以遍历所有锚标记并删除超链接标记

<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>

2 个答案:

答案 0 :(得分:5)

您需要使用

1)过滤函数以获取具有文本为APL的锚元素。

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

$(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>

答案 1 :(得分:0)

$('a')可能是这个函数的一个很大的选择器,但以下工作。

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

https://jsfiddle.net/v8qr2vgL/