1

嘿,伙计们,我昨天试图问这个问题,但我没有清楚或简单地解释自己。

我有一个设置在表格中的表格。用户可以随意添加新行(和更多表单元素)。这个表单的每一行都需要有自己独立的选择框和对应的子类选择框。

所以基本上...

姓名 | 选择
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();});     

任何帮助都将不胜感激。提前致谢。:)

4

1 回答 1

1

您可能会遇到 ID 冲突和事件绑定的问题。尝试使用 live();

当您克隆和移动 DOM 元素时,您的事件将变得不受约束。

试试这个:

$("#add").live("click", function() {
$("#selection").live("change", function() {

此外,看起来您可能正在复制 ID。检查并确保#selection、#selectionresult 等没有被克隆。

于 2010-07-30T16:41:23.910 回答