在HTMLString中找到的元素中设置attr(name)

时间:2015-08-29 11:17:23

标签: javascript jquery html

我使用html_data保存在HTML变量Jquery代码中。特别是

Jquery(document).ready(function(){

     html_data = $('.row').html();

)};



<div class = "row">
  <div class = "col-md-12">
    <select multiple="multiple" id ="sel1">
      <option value="1"> Element1 </opion>
      <option value="2"> Element2 </opion>
      <option value="3"> Element3 </opion>
    </select>
   </div>
</div>

<div class ="before"></div>

然后我在Jquery写了一个函数

function newRow(){
    new_html = html_data;
    $(new_html).find('select').attr('name', 'myNewSelect');
    $(new_html).insertBefore('.before');
}

创建了具有row的新select multiple,但未设置属性名称。我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

您无需获取html() .row元素。 您可以使用.clone() jquery方法,然后使用相同的.before方法在.insertbefore()之前将其附加到<{p}}

function newRow(){
var new_html = $('.row .col-md-12').clone(true);
new_html.insertBefore('.before');
new_html.find('select').attr('name', 'myNewSelect');
}

这是小提琴:https://jsfiddle.net/eL43e2vs/