我有一个在表格中设置的表单。用户可以随意添加新行(以及更多表单元素)。此表单的每一行都需要有自己独立的选择框和相应的子类别选择框。
所以基本上......
姓名|选择
xxxxxx | [类别选择] [子类别选择]
xxxxxx | [类别选择] [子类别选择]
xxxxxx | [类别选择] [子类别选择]
你明白了。 :)
现在添加的任何行都有自动填充的损坏版本。
有关如何使其发挥作用的任何建议吗?
这是自动填充代码并添加我正在使用的表格行代码,如果这有助于任何人的大脑。如果有人得到他们认为更好的答案,我会很乐意废弃一切。
我可以添加/删除表单行的解决方案的免费cookie。 :)
// auto populate select code
$(document).ready(function(){
$("#selectionresult").hide();
$("#selection").change( function() {
$("#selectionresult").hide();
$("#result").html("Retrieving ...");
$.ajax({
type: "POST",
data: "data=" + $(this).val(),
url: "include/javascript_population.php",
success: function(msg){
if (msg != ""){
$("#selectionresult").html(msg).show();
$("#result").html("");
}
else{
$("#result").html("<em>No item result</em>");
}
}
});
});
});
// add table row code
$(document).ready(function() {
$("#add").click(function() {
$('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
return false;
});
});
$("#mytable tbody>tr:last").each(function() {this.reset();});
任何帮助都会得到所有人的赞赏。提前致谢。 :)
答案 0 :(得分:1)
您可能在ID的冲突和事件绑定方面遇到问题。尝试使用live();
当您克隆并移动DOM元素时,您的事件将被解除绑定。
试试这个:
$("#add").live("click", function() {
$("#selection").live("change", function() {
此外,您可能正在复制ID。检查并确保没有克隆#selection,#selectresult等。