我正在使用jQuery向表中添加新行,并按照我的意愿淡化行,但只有两次调用,第一次使用after
在表的末尾添加新行,然后我使用hide
后跟fadeIn
来获得效果。我想压缩这个
$(document).ready(function ($) {
$("button").click(function () {
$.get('@Url.Action("AddCalculatorRow", "Workshop",
new { id = Model.Id } )', function (data) {
$('.calculator').find("tbody tr:last").after(data);
$('.calculator').find("tbody tr:last").hide().fadeIn(2000);
});
});
});
重复告诉我必须有一种更优雅的方式来实现外观。但是,如果我这样做
$('.calculator').find("tbody tr:last").after(data).hide().fadeIn(2000);
然后立即显示添加的行,最后一行是隐藏和淡入的......这看起来很糟糕。
答案 0 :(得分:3)
添加新内容后,只需定位下一个元素。
$('.calculator').find("tbody tr:last").after(data).next().hide().fadeIn(2000);
或交换它:
$(data).hide().appendTo('.calculator tbody').fadeIn(2000);
在使用之前继续解析数据也是明智之举,但这完全是可选的:
$($.parseHTML(data)).hide().appendTo('.calculator tbody').fadeIn(2000);