我有:
<table>
<tr class="here">
<td class="first">first</td>
<td class="next" par="http://google.com">next</td>
<td class="next" par="http://stackoverflow.com">next</td>
</tr>
</table>
我想收到jQuery:
<table>
<tr class="here">
<td class="first"><a href="http://google.com">first</a></td>
<td class="next" par="http://google.com">next</td>
<td class="next" par="http://stackoverflow.com">next</td>
</tr>
</table>
必须从第一个 TD.next 获取参数 par ,并使用此参数在第一个TD中建立链接。
可以使用jQuery吗?如果是,怎么样?
修改 谢谢你的回答。对于所有+1。我还有一个问题:
<table>
<tr class="here">
<td class="first">first</td>
<td class="next" par="http://google.com">next</td>
<td class="next" par="http://stackoverflow.com">next</td>
</tr>
<tr class="here">
<td class="first">first</td>
<td class="next" par="http://yahoo.com">next</td>
<td class="next" par="http://stackoverflow.com">next</td>
</tr>
<tr class="here">
<td class="first">first</td>
<td class="next" par="http://cnn.com">next</td>
<td class="next" par="http://stackoverflow.com">next</td>
</tr>
</table>
现场:http://jsfiddle.net/C5vSP/2/
此添加适用于所有.here链接google.com而不是google.com,yahoo.com和cnn.com。 我不能修改HTML。我只能使用jQuery。 我怎样才能正确地做到这一点?
答案 0 :(得分:7)
如何: jsFiddle
var url = $('td.next:first').attr('par');
$('td.first').wrapInner('<a href="'+url+'">');
答案 1 :(得分:3)
选择器如下所示:
myTD = $('table tr.here td.next').filter(':first')
我建议将参数“par”改为“data-par”,这样你就可以说利用Jquery的data()函数了。数据函数读入以“data-”开头的任何参数,例如......
myvar = myTD.data('par');
我并不完全清楚你的意思是“用这个参数在第一个TD中建立链接。”但是,让我们说你想把第二个TD内的“下一个”变成一个链接......
myTD = $('table tr.here td.next')
newLink = '<a href="' + myvar + '">' + myTD.html() + '</a>';
myTD.html( newLink);
答案 2 :(得分:2)
编辑完成后,这是你想要的吗? Jsfiddle
$("tr.here").each(function (){//Iterate all the <tr/>
var $html = $(this);
var $firstTd = $html.children(":first");//get the first td.
var url = $firstTd.next().attr("par");//Get the first par value.
$firstTd.wrapInner('<a href="'+url+'">');//Append the value.
})