PHP/JQuery克隆隐藏表行,添加到表的末尾
我有一个表,第一个TR被隐藏(style=“display:none;”)。我在表的顶部有一个按钮,允许用户向表中添加新行。单击时,我希望将隐藏行克隆并添加到表的底部。我认为这是最好的方式,因为我可以预先设置行的格式,以便在新行中准确地包含我需要的内容 以下是我到目前为止的JQuery:PHP/JQuery克隆隐藏表行,添加到表的末尾,php,jquery,Php,Jquery,我有一个表,第一个TR被隐藏(style=“display:none;”)。我在表的顶部有一个按钮,允许用户向表中添加新行。单击时,我希望将隐藏行克隆并添加到表的底部。我认为这是最好的方式,因为我可以预先设置行的格式,以便在新行中准确地包含我需要的内容 以下是我到目前为止的JQuery: $(document).ready(function($) { $(".dispadd").click(function() { $('#hiddenrow').clone().show().
$(document).ready(function($) {
$(".dispadd").click(function() {
$('#hiddenrow').clone().show().appendTo( $('#hiddenrow').parent() );
});
});
它似乎按预期添加了行,但在一秒钟内,新行消失了。
有人知道我做错了什么吗
\uuuuuuuuuuuuu最新代码\uuuuuuuuuuuuuu
$(document).ready(function($) {
$(".dispadd").click(function(event) {
event.preventDefault();
$('#hiddenrow')
.clone()
.removeAttr('id')
.show()
.appendTo( $('#disptable').after().show()
);
});
});
在将#hiddenrow移到父表之外之后,我不得不对其进行一些修改。如何设置克隆行中某个输入框的值?您的代码工作正常,因此页面上的其他代码必须隐藏新行。这很可能是因为您没有从克隆的行中删除
#hiddenrow
-请参阅以下内容:
$(document).ready(function($) {
$(".dispadd").click(function() {
$('#hiddenrow')
.clone()
.removeAttr('id')
.show()
.appendTo( $('#hiddenrow').parent() );
});
});
演示:您的代码工作正常,因此页面上的其他代码必须隐藏新行。这很可能是因为您没有从克隆的行中删除
#hiddenrow
-请参阅以下内容:
$(document).ready(function($) {
$(".dispadd").click(function() {
$('#hiddenrow')
.clone()
.removeAttr('id')
.show()
.appendTo( $('#hiddenrow').parent() );
});
});
演示:后续说明-如果不从新克隆的行中删除id#hiddenrow,则会得到多个具有相同id的行-请参见此处:后续说明-如果不从新克隆的行中删除id#hiddenrow,您将得到多个具有相同id的行-请参见此处:如果将show移到末尾会怎么样?如何
。removeAttr('id')
,因为这可能会使其隐藏/不显示?使#hiddenrow
隐藏的所有规则。。。可能会应用…如果您将show移到末尾怎么办?如何.removeAttr('id')
,因为这可能会使它隐藏/不显示?使#hiddenrow
隐藏的所有规则。。。可能会应用…在单击按钮并使新行出现然后快速消失后,我检查了源代码,但它也不在那里。Firebug允许您在添加或删除子项时设置断点-这应有助于跟踪删除行的内容。检查表,然后在Firebug的DOM选项卡中右键单击它,然后单击“在添加或删除子项时中断”,我想我正在缩小它的范围。我的桌子用一张纸包着。提交表单时,它会对表单进行处理,然后用新的数据库数据重新填充表单。有什么东西可以添加到JQuery中来阻止按钮提交我的表单吗?是的,event.preventDefault()
会处理好的-我真的很感谢你的帮助Kelvin!还有其他提出建议的人!单击按钮并使新行出现然后快速消失后,我检查了源代码,但它也不在那里。Firebug允许您在添加或删除子级时设置断点-这应有助于跟踪删除行的内容。检查表,然后在Firebug的DOM选项卡中右键单击它,然后单击“在添加或删除子项时中断”,我想我正在缩小它的范围。我的桌子用一张纸包着。提交表单时,它会对表单进行处理,然后用新的数据库数据重新填充表单。有什么东西可以添加到JQuery中来阻止按钮提交我的表单吗?是的,event.preventDefault()
会处理好的-我真的很感谢你的帮助Kelvin!还有其他提出建议的人!