大家好我有以下代码,如下所示,添加一个由文本字段和单选按钮组成的新行,我已经编写了JS添加新行,并使用.find()附加新的输入字段为空值。我是JS的新手,想要在克隆时向另一个.find()执行另一个.find(),以便为无线电输入添加一个值,有人可以告诉我该怎么做。
<div id='1'>
<div class="template">
<div>
<label class="right inline">Response:</label>
</div>
<div>
<input type="text" name="responseText[]" value="" maxlength="400" />
</div>
<div>
<input type="radio" name="responseRadio[]" value="" />
</div>
</div>
<div>
<input type="button" name="addNewRow" value="Add Row" />
</div>
</div>
JS添加新行:
var $template = $('.template');
$('input[type=button]').click(function() {
$template.clone().insertAfter($template).find("input:text").val("");
});
答案 0 :(得分:0)
你可以这样试试 -
var $clone = $template.clone();
$clone.find("input:text").val("");
$template.after($clone);
答案 1 :(得分:0)
var $clonedNode = $template.clone();
$clonedNode.find('input:text').val('');
$clonedNode.find('input:radio').attr('checked', 'checked');
$template.insertAfter($clonedNode);
是将单选按钮设置为选中。
答案 2 :(得分:0)
只需获取克隆模板并在插入之前使用您喜欢的任何方法:
var $template = $('.template');
$('input[type=button]').click(function() {
var $elem = $template.clone();
$elem.find("input:text").val("");
$elem.find("input:radio").val("whatever");
$elem.insertAfter($template);
});
这是一个小提琴:http://jsfiddle.net/SWCPD/1/