我有以下代码来更新特定行中的所有表格单元格:
$('#riga'+id_cella).children('td').each(function(){
if (!$(this).hasClass("ore")) {
$(this).fadeOut('fast',function(){
$(this).removeClass('planned').addClass('planning');
$(this).next("a").text('Scegli');
$(this).fadeIn('fast');
});
}
});
此代码更改每个单元格中的一些css,并应更新单元格内的href文本以显示“Scegli”而不是“solo video”。 表格单元格包含以下代码:
<td class="planned">
<a id="14" class="plan toPlan" href="plan.php?when=4&who=1" title="Pianifica le ore 03:00 per il gruppo 1 ">solo video</a>
</td>
关键是下一个(a)似乎没有选择单元格内的href。如果我写:
$(this).text('Scegli');
它改变(如预期的)完全去除href的单元格内容。 看不出我做错了什么
答案 0 :(得分:1)
改变这个:
$(this).next("a").text('Scegli');
到此:
$(this).find("a").text('Scegli');
请参阅this fiddle
或者更好,利用链接:
$('#riga'+id_cella).children('td').each(function(index, element){
var $ele = $(element),
noOre = !$ele.hasClass('ore');
if(noOre){
$ele.fadeOut('fast',function(){
$ele.removeClass('planned').addClass('planning').find("a").text('Scegli').end().fadeIn('fast');
});
}
});
请参阅this fiddle