在一些标签之后追加

时间:2015-09-02 10:36:28

标签: jquery html

Html:

<div class="form-group img-upload">
     <label class="control-label col-md-offset-3 col-md-2 btn green" style="text-align:center;">Add Image<span class="required" aria-required="true"></span>
     </label>
     <div class="col-md-7" id="prev_image"></div>
</div>

我想追加:

 <input type="file" name="data[Tolet][images][]" class="form-control hide img-btn" id="1"> 
完全在之后 #img-upload>label>span

追加后我的预期html:

<div class="form-group img-upload">
    <label class="control-label col-md-offset-3 col-md-2 btn green" style="text-align:center;">Add Image<span class="required" aria-required="true"></span>
        <input type="file" name="data[Tolet][images][]" class="form-control hide img-btn" id="1">                                
    </label>
    <div class="col-md-7" id="prev_image"></div>
</div>

jquery的

var fileInput = '<input type="file" name="data[Tolet][images][]" class="form-control hide img-btn" id="'+ id +'">';
('.img-upload>label>span').append(fileInput);

但它不起作用没有显示任何错误。

2 个答案:

答案 0 :(得分:2)

您正在寻找.after()

  

在参数中的每个元素之后插入由参数指定的内容   一组匹配的元素。

$('.img-upload>label>span').after(fileInput);

DEMO

您也可以使用.insertAfter()

$(fileInput).insertAfter('.img-upload>label>span');

DEMO

  

.after().insertAfter()方法执行相同的任务。该   主要区别在于语法特定,在放置中   内容和目标。使用.after(),选择器表达式   在该方法之前是容器,在该容器之后是内容   插入。另一方面,使用.insertAfter(),内容先于   该方法,作为选择器表达式或作为标记创建   苍蝇,它被插入目标容器之后。

答案 1 :(得分:1)

追加意味着在内容之后提到的元素。

您只需使用$('.img-upload>label').append(fileInput)作为选择器。这意味着fileInput将附加到标签的末尾。

var id = 1;
var fileInput = '<input type="file" name="data[Tolet][images][]" class="form-control hide img-btn" id="'+ id +'">';
$('.img-upload>label').append(fileInput);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="form-group img-upload">
     <label class="control-label col-md-offset-3 col-md-2 btn green" style="text-align:center;">Add Image<span class="required" aria-required="true"></span>
     </label>
     <div class="col-md-7" id="prev_image"></div>
</div>