由于我不了解 Django,因此这不包括删除部分,我假设您将对其进行 AJAXify(执行异步请求以删除)。我还在此处将$devices
and$deletes
变量分别显示为局部变量,或多或少,这样您就可以看到如何存储引用然后从这些引用中工作(我认为这比一遍又一遍地重新选择更好)。
还要注意使用:
jQuery(document).ready(function r($){
我jQuery()
在全局范围内使用,在更大的应用程序中,您应该始终这样做,以免与可能使用的其他库/框架发生冲突$()
。这也是一种最佳实践,您可以$()
在该匿名函数(闭包)中使用。最好习惯这种方式,IMO。
<table>
<thead>
<tr>
<th>Operator</th>
<th>State</th>
<th>T-Stamp GPS</th>
<th> </th>
</tr>
</thead>
<tbody>
<tr class="device">
<td>Verizon</td>
<td>OK</td>
<td>033830928</td>
<td>
<button type="button" id="d001" class="delete">Delete</button>
</td>
</tr>
...
</tbody>
</table>
笔记
我做了一个微小但重要的更改,参考$self
,因为 AJAX 将在超出范围success
后运行处理程序:this
jQuery(document).ready(function r($){
var $devices = $('tr.device'),
$deletes = $devices.find('button.delete');
$deletes.click(function d(){
var $self = $(this).parents('tr.device'),
del = confirm('Delete device?');
if (del) {
// Do $.ajax() request, maybe using the
// clicked button's ID. Or you could put
// the row to delete ID on the TR element.
// And then on success of the AJAX, run:
$self.fadeOut(500, function f(){
$self.remove();
});
}
});
});
http://jsfiddle.net/wMqr8/2