【发布时间】:2010-02-16 17:12:38
【问题描述】:
我有一个表格,每行有两个单元格。第一个包含数据,第二个包含输入按钮“编辑”和“删除”。为了制作这个不显眼的 ajax,我使用了下面的代码:
<tr>
<td>I have some data for you</td>
<td>
<a href="edit" class="edit"><input type="button" value="Edit" /></a>
<a href="delete" class="delete"><input type="button" value="Delete" /></a>
</td>
</tr>
$("a.edit").live("click",function(){
$tr = $(this).parent().parent();
$tr.children().fadeOut(400,function(){
$tr.loadingGif(function(){
$tr.ajaxGetEditForm();
});
});
return false;
});
.loadingGif() 只是一个将背景变为黄色并提供“加载”gif 的函数。 ajaxGetEditForm() 是一个进行 Ajax 调用并将旧数据替换为 Edit 输入表单的函数。
它按预期工作,但它们是链接这些事件的更清洁的方式吗?当我有 $tr.children().fadeOut().parent().isLoading()... javascript 只是通过函数拍摄。 IE。我希望它在开始下一个动画之前等待淡出动画完成。
【问题讨论】:
-
$(this).parent().parent();可能是$(this).closest("tr");,除了看起来不错 -
我不确定在链接中设置按钮是个好主意。你可以不使用其中一个吗?
-
谢谢约翰,看起来有点乱。