【发布时间】:2015-09-22 13:53:23
【问题描述】:
我正处于创建动态表单的第一阶段。问题是,当我再次单击表单的按钮时,表单会加倍添加。第一次点击,就正常了,加个表单就好了。
代码:
<div class="panel-body panel-primary">
<ul id="lista" style="list-style-type: none">
<li id="listap">
<form id="formPregunta" >
<div class="form-group">
<label>Pregunta:</label>
<input type="text"> </input>
</div>
<div class="form-group">
<label>tipo respuesta:</label>
<select>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
</div>
<div class="form-group">
<input class="bottom" type="button" value="agregar"> </input>
</div>
</form>
</li>
</ul>
</div>
<script type="text/javascript">
$(document).ready();
$('input:button').on('click', function(e){
e.preventDefault();
var newF = $('#lista').html();
$('#listap').after(newF);
});
</script>
.html() 函数的文档说:获取匹配元素集中第一个元素的 HTML 内容或设置每个匹配元素的 HTML 内容。
我不知道重复会出现什么问题。另一个问题是,该事件仅适用于第一个表单上的按钮,在其他创建的表单中不起作用。任何形式的答案或建议表示赞赏。
【问题讨论】:
-
为什么没有表单元素的名称(输入、选择)?
-
您可以使用 first() 函数获取第一个 li。通过工作演示查看我的答案here
标签: javascript jquery html forms