Jquery:如何在特定表行的所有链接中进行迭代

Jquery:如何在特定表行的所有链接中进行迭代,jquery,Jquery,假设这是我的桌子 <table border="1" id="tbl"> <tr class="clsHead"> <td> <a href="b.aspx">first row first cell</a> </td> <td> <a href="b.aspx">first row second

假设这是我的桌子

<table border="1" id="tbl">
    <tr class="clsHead">
        <td>
            <a href="b.aspx">first row first cell</a>
        </td>
        <td>
            <a href="b.aspx">first row second cell</a>
        </td>
    </tr>
    <tr>
        <td colspan="2">
            <a href="">seconde row</a>
        </td>

    </tr>
</table>

如果可能的话,告诉我是哪里出的错。谢谢

您正在尝试获取/设置每个
.clsHead
元素的
href
属性,因为它们没有
href
属性,所以显然无法工作

您需要选择子体
a
元素:

$(".clsHead a").each(function() {
  $(this).attr('href', $(this).attr('href') + '&qString=1');
});
虽然只访问
this
href
属性要短一些:

$(".clsHead a").each(function() {
  this.href = this.href + '&qString=1';
});
或者不使用jQuery:

var elements = document.querySelectorAll('.clsHead a');
Array.prototype.forEach.call(elements, function (el)  {
  el.href = el.href + '&qString=1';
});
您可能需要将该逻辑包装到DOM加载的事件回调中:

document.addEventListener('DOMContentLoaded', function() {
  var elements = document.querySelectorAll('.clsHead a');
  Array.prototype.forEach.call(elements, function(el) {
    el.href = el.href + '&qString=1';
  });
});
试试这个

 $(document).ready(function (){
 $(".clsHead a").each(function ()
 {
   alert($(this).attr('href'));
  $(this).attr('href',$(this).attr('href')+'&qString=1') ; 
});
});
 $(document).ready(function (){
 $(".clsHead a").each(function ()
 {
   alert($(this).attr('href'));
  $(this).attr('href',$(this).attr('href')+'&qString=1') ; 
});
});