【问题标题】:Adding extra line with JS用 JS 添加额外的行
【发布时间】:2014-12-28 21:17:06
【问题描述】:

基本上我希望在单击添加按钮(最后一个 div)时复制它,但也要在名称上添加 _1

  <div class="form-group">
    <div class="col-sm-2">Size</div>
         <div class="col-lg-3">
             {{ Form::select('size', $sizes, null, ['class' => 'form-control'])}}
         </div>

        <div class="col-sm-1">Colour</div>
         <div class="col-lg-2">
             {{ Form::select('colour', $colours, null, ['class' => 'form-control'])}}
         </div>
         <div class="col-sm-1">Stock</div>
          <div class="col-lg-2">
              <input type="text" name="stock" class="form-control">
          </div>

          <div class="col-md-1">
          <!--- WHEN THIS IS CLICKED ----->
            <a class="btn btn-primary btn-sm" id="add"><i class="fa fa-plus"></i> Add</a>
          </div>
       </div>

当单击添加按钮时,我想再次显示整个表单组,在名称中添加下划线和数字也可以阻止重复条目。

所以我认为使用 jQuery 的东西应该这样做,但是作为一个 jQuery 新手我不知道该写什么。

所以在点击添加按钮时,它需要在已经存在的那个下面再次显示整个表单组 div,但还需要在名称属性中添加一个下划线和一个数字,以在我保存到数据库时停止重复条目.

【问题讨论】:

  • 您的问题可能需要一些改进。不要假设读者和你一样了解你的谜题。再读一遍这个问题,看看它是否对遇到问题的人有意义。
  • 当您说添加表单组时,您是在谈论表单组内部的内容还是包含表单组标签?

标签: javascript php jquery laravel-4


【解决方案1】:

下面的代码应该复制块并将新副本附加到主体,最外层 div 的名称设置为 ...a_x 如果我的问题是正确的,那就是你想要的

 var  x = 0;
    $("#add").click(function(){ 
      x++;
      $('.form-group:first').clone().attr("name", "a_"+x).appendTo($('body'));
      alert(x);
    });

还有来自 w3Schools 的链接http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_html_clone

【讨论】:

  • 好吧,这可以正常工作,但是当我查看源代码时,虽然它已被克隆,但那里什么也没有,但我需要它将带有添加内容的 HTML 返回到 attr 名称字段,以便我可以将其保存到数据库中.
  • 查看源代码没有显示任何 javascript 操作的 html,尝试“检查元素”来查看它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多