首页 > 解决方案 > 添加新的表单域行

问题描述

我有这些表单域:

<div class="input-group-option">

    <div class="col-md-2">
        <div class="form-group" id="add_aantal_huidig_div">
            <input type="number" class="form-control" id="add_aantal_huidig[]" name="add_aantal_huidig[]" value="">
        </div>
    </div>

    <div class="col-md-2">
        <div class="form-group" id="add_min_aantal_1_div">
            <input type="number" class="form-control" id="add_min_aantal_1[]" name="add_min_aantal_1">
        </div>
    </div>

    <div class="col-md-2">
        <div class="form-group" id="add_min_aantal_2_div">
            <input type="number" class="form-control" id="add_min_aantal_2" name="add_min_aantal_2[]" value="">
        </div>
    </div>

</div>

当用户单击其中一个表单域时,我正在使用此脚本创建一行新的表单域。

$(function(){

    $(document).on('focus', 'div.input-group-option:last-child input', function(){

        var sInputGroupHtml = $(this).parent().html();
        var sInputGroupClasses = $(this).parent().attr('class');
        $(this).parent().parent().append('<div class="'+sInputGroupClasses+'">'+sInputGroupHtml+'</div>');

    });
});

所以点击后的结果是:

我现在遇到的问题是,当用户单击表单域时,只会复制此表单域,而不会复制其他表单域。有了这个结果: 在此处输入图像描述

有什么建议么?

标签: jquerytwitter-bootstrap-3

解决方案


html

<div class="input-group-option-container">
    <div class="input-group-option">

        <div class="col-md-2">
            <div class="form-group" id="add_aantal_huidig_div">
                <input type="number" class="form-control" id="add_aantal_huidig[]" name="add_aantal_huidig[]" value="">
            </div>
        </div>

        <div class="col-md-2">
            <div class="form-group" id="add_min_aantal_1_div">
                <input type="number" class="form-control" id="add_min_aantal_1[]" name="add_min_aantal_1">
            </div>
        </div>

        <div class="col-md-2">
            <div class="form-group" id="add_min_aantal_2_div">
                <input type="number" class="form-control" id="add_min_aantal_2" name="add_min_aantal_2[]" value="">
            </div>
        </div>

    </div>
</div>

javascript

  $(function(){

    $(document).on('focus', 'div.input-group-option:last-child input', function(){
      var sInputGroupHtml = $('div.input-group-option:last-child').html();

      var sInputGroupClasses = $('div.input-group-option').attr('class');

      $('div.input-group-option').parent().append(`<div class="${sInputGroupClasses}">${sInputGroupHtml}</div>`);

    });
  });

风格

    .input-group-option-container {
        display: flex;
        flex-direction: column;
    }

推荐阅读