可以添加或删除表行。我已经设置了一个确认来警告用户他们是否尝试删除自己的行(从数据库加载的第一行);如果他们为其他人设置,他们可能需要这样做。第二行(class = leaderrow)为空,并且该leaderrow是单击addRow按钮时克隆的内容。
如何防止(或至少警告)用户删除表格中的每个领导者?如果删除了所有领导者,则添加按钮将失败。
这是jQuery:
$("a.self").live('click', function(){
go=confirm('After saving you will lose the ability to edit this organization. Continue to remove yourself?')
if(go){
$(this).parent().parent().remove();
}
return false; // prevent link to jump to a page.
});
$("a.remove").live('click', function(){
$(this).parents('tr').remove();
return false; // prevent link to jump to a page.
});
这是表格,它是表格的一部分:
<table width="100%" border="0" class="unsorted_table">
<thead>
<tr>
<th>Name*</th>
<th>Action</th>
</tr>
</thead>
<tbody id="entries">
<tr>
<td>User's own name</td>
<td><a href="" name="delete_row[]" class="remove self">remove</a></td>
</tr>
<tr class="leaderrow">
<td><select name="leaderid[]" >
<option value="3">Sue</option>
<option value="4">Jeannie</option>
<option value="5">Kerry</option>
<option value="6">Travis</option>
</select>
</td>
<td><a href="" name="delete_row[]" class="remove">remove</a></td>
</tr>
</tbody>
<tfoot>
<tr>
<td><p><input type="button" id="addRow" value="Add Another" /></p></td>
</tr>
</tfoot>
</table>
答案 0 :(得分:2)
$("a.remove").live('click', function(){
if($(this).parents('tr').siblings().size() > 1)
$(this).parents('tr').remove();
else
alert('cant remove');
return false; // prevent link to jump to a page.
});
(未经测试的代码,但你明白了)