我有以下表格
<form action="" class="form-horizontal">
<div id="wrapper">
<div class="row-fluid">
<div class="span6">
<div class="control-group">
<label class="control-label"><?=$core->l("default_comm_type");?></label>
<div class="controls">
<select id="fld_default_comm_type" name="fld_default_comm_type[]" defaultValue="-1" class="m-wrap span10" field="fld_default_comm_type" appEditor="true">
<?=combo_creator::render_default_comm_types()?>
</select>
</div>
</div>
</div>
<div class="span4 checkerAlign">
<div class="control-group">
<div class="controls">
<?=$core->l("is_active");?>
</div>
</div>
</div>
<div class="span2 checkerAlign"><input type="checkbox" name="fld_active[]" id="fld_active" editType="booleanEdit" appEditor="true"/></div>
</div>
<div><a href="#" id="addMore">Add Row</a></div>
</div>
问题是当用户单击“添加行”按钮时,我需要在
中创建此表单元素的副本<div id="wrapper">
我该怎么做?
编辑:已解决
<form action="" class="form-horizontal" id="wrapper">
<div class="row-fluid">
<div class="span6">
<div class="control-group">
<label class="control-label"><?=$core->l("default_comm_type");?></label>
<div class="controls">
<select id="fld_default_comm_type" name="fld_default_comm_type[]" defaultValue="-1" class="m-wrap span10" field="fld_default_comm_type" appEditor="true">
<?=combo_creator::render_default_comm_types()?>
</select>
</div>
</div>
</div>
<div class="span4 checkerAlign">
<div class="control-group">
<div class="controls">
<?=$core->l("is_active");?>
</div>
</div>
</div>
<div class="span2 checkerAlign"><input type="checkbox" name="fld_active[]" id="fld_active" editType="booleanEdit" appEditor="true"/></div>
</div>
<a href="#" id="addMore">add</a>
</form>
在Js部分:
jQuery("#addMore").click(function(){
var contents = jQuery("form").html();
jQuery("#wrapper").append(contents);
});
单击添加时,它会按照我的意愿插入表单元素 当单击删除时,它会删除元素。谢谢你们的提示 问题解决了!谢谢你们。
答案 0 :(得分:4)
我认为您需要复制(row-fluid
)的内容,而不是整个(Wrapper
)内容,这可以让您在点击{{1时添加原始表单模板的更多行链接。
这是@ user2389688建议的解决方案的编辑:
AddMore
JsFiddle链接: http://jsfiddle.net/tCY8v/1/
答案 1 :(得分:1)
这样的东西?
$("#addMore").click(function(){
var contents = $("form").html();
$("#wrapper").append(contents);
});
如果我确实理解了你的问题。
答案 2 :(得分:0)
例如:
$('#addMore').click(function() {
$('.row-fluid').eq(0).clone().insertBefore(this);
});