反转Javascript函数
我有一个脚本,可以克隆最后一个表行,并通过单击[+]图标将其插入到表的底部。我想做的是通过单击[-]图标来删除最后一个表行。这可能吗?如果可能的话,有人能给我指出正确的方向吗反转Javascript函数,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一个脚本,可以克隆最后一个表行,并通过单击[+]图标将其插入到表的底部。我想做的是通过单击[-]图标来删除最后一个表行。这可能吗?如果可能的话,有人能给我指出正确的方向吗 <script type="text/javascript"> $(document).ready(function() { $("#add").click(function() { $('#mytable tbody>tr:last').clone(true).insertAft
<script type="text/javascript">
$(document).ready(function() {
$("#add").click(function() {
$('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
$('#mytable tbody>tr:last #itemid').val('');
$('#mytable tbody>tr:last #itemdesc').val('');
return false;
});
});
</script>
$(文档).ready(函数(){
$(“#添加”)。单击(函数(){
$('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
$('#mytable tbody>tr:last#itemid').val('';
$('#mytable tbody>tr:last#itemdesc').val('';
返回false;
});
});
是的,jQuery有一个名为:
你可以让它快一点
$("#remove").click(function(e) {
$('#mytable tbody tr').filter(':last').remove();
e.preventDefault();
});
});
该方法正是您想要的:
$("#remove").click(function(e) {
e.preventDefault();
$('#mytable > tbody > tr:last-child').remove();
});
e.preventDefault()
用于阻止元素的默认操作(无论是按钮还是链接)。我假设有一个默认操作,因为您使用的是returnfalse代码>在原始添加代码中
(旁注:)
另外,我在这里使用的是:last child
,而不是:last
:
由于:last
是jQuery扩展,而不是CSS规范的一部分,因此使用:last
的查询无法利用本机DOMquerySelectorAll()方法提供的性能提升。要在使用:last
选择元素时获得最佳性能,请首先使用纯CSS选择器选择元素,然后使用.filter(“:last”)
由于纯CSS选择器在这种情况下工作(假设您有一个格式良好的表),因此不需要.filter(':last')
。您还应该能够在克隆最后一行时在#添加代码中执行此操作。使用jQuery:
如果只有t车身
s,则不需要t车身
。。。否则,thead
的最后一行也将被删除。我很惊讶在这样一个人们应该互相帮助的网站上竟然存在讽刺。实际上这没关系。。。
$("#remove").click(function(e) {
e.preventDefault();
$('#mytable > tbody > tr:last-child').remove();
});
$("#remove").click(function(e) {
e.preventDefault();
$('#mytable tbody>tr:last').remove();
});