【问题标题】:jquery clone an html structure with out text contentjquery克隆没有文本内容的html结构
【发布时间】:2013-08-27 09:32:23
【问题描述】:

每一个。 请帮帮我。

如何克隆没有输入内容的 html 结构(带有表格和输入字段)。

这是我的html代码

<div class="clone_wrapp">
            <div class="clone_table">
                <div class="two_column_table">
                    <table>
                        <tr><td>Name of officer-in-charge</td></tr>
                        <tr><td><input type="text"></td></tr>
                        <tr><td>Contact No</td></tr>
                        <tr><td><input type="text"></td></tr>
                    </table>
                </div>  <!-- two_column_table -->
                <div class="two_column_table">
                <table>
                        <tr>
                            <td>Address</td>
                            <td><textarea></textarea></td>
                        </tr>
                </table>
                </div> <!-- two_column_table -->
            </div> <!-- clone_table  -->
    </div> <!-- cloned wrapp  -->

    <div class="add_more_field">ADD MORE</div>

这是我的 jquery

$('.add_more_field').click(function(){
               var cloned_structure= $('.clone_table').clone();
                  $('.clone_wrapp').append(cloned_structure);
 });

代码正在运行,但它会与输入内容一起附加

谢谢

【问题讨论】:

    标签: javascript jquery html dom clone


    【解决方案1】:

    如果克隆表是您的模板,您可以在单击之前存储它的副本,这样每个副本就不会存储文本输入。

    一个例子:

    var clone_table_html = "
                <div class=\"clone_table\">
                    <div class=\"two_column_table\">
                        <table>
                            <tr><td>Name of officer-in-charge</td></tr>
                            <tr><td><input type=\"text\"></td></tr>
                            <tr><td>Contact No</td></tr>
                            <tr><td><input type=\"text\"></td></tr>
                        </table>
                    </div>  <!-- two_column_table -->
                    <div class=\"two_column_table\">
                    <table>
                            <tr>
                                <td>Address</td>
                                <td><textarea></textarea></td>
                            </tr>
                    </table>
                    </div> <!-- two_column_table -->
                </div> <!-- clone_table  -->
    ";
    $('.add_more_field').click(function() {
        $('.clone_wrapp').append(clone_table_html);
    });
    

    或者:

    var clone_table_template;
    $(document).ready(function() {
      clone_table_template = $('.clone_table').clone();
    });
    $('.add_more_field').click(function() {
      $('.clone_wrapp').append(clone_table_template);
    });
    

    【讨论】:

      【解决方案2】:

      你需要尝试

      $('.add_more_field').click(function(){
          var cloned_structure= $('.clone_table').clone();
          cloned_structure.removeClass('clone_table').find('input:text').val('')
          $('.clone_wrapp').append(cloned_structure);
      });
      

      【讨论】:

      • 还有第二个问题:它还会克隆已经克隆的结构。所以它将是 2 的幂,而不是 1 的温和算术进展。
      猜你喜欢
      • 2013-01-24
      • 2015-02-22
      • 2021-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多