我正在尝试迭代3个表单,其中包含不同数量的输入框.在每个表单中,输入字段具有相同的类.我需要做的是,有一个“复制”按钮,这样当按下它时,它将复制一个字段的输入并将其复制到每个字段.以下是目前设置的方式:
<input type="button" class="replicate" />
<form class="1">
<input class="1_size" /> <!--this is the one I want to copy to all other fields -->
</form>
<form class="1">
<input class="1_size" />
</form>
<form class="2">
<input class="2_size" />
</form>
<form class="2">
<input class="2_size" />
</form>
<form class="2">
<input class="2_size" />
</form>
<form class="3">
<input class="3_size" />
</form>
<form class="3">
<input class="3_size" />
</form>
所以我需要做的[当按下复制按钮时]是迭代每个表单并使用第一个表单的输入(请参阅注释)并将其复制到所有其他表单中的所有其他输入.这甚至可能吗?存在具有相同类和输入的表单的原因是因为它们具有“”和“ – ”按钮
我正在使用jQuery库,我想我可以做类似的事情:
$(document).ready(function() {
$('.1, .2, .3').each(function() {
});
});
我可以使用.parents()或parent()之类的东西吗?我有点卡住,甚至不确定你是否可以像这样使用每个()…希望我已经解释得很好!
解决方法:
如果你只有一个“复制”按钮,你可能应该给它一个id而不是一个类用于选择目的,但无论如何,下面为该按钮创建了一个单击处理程序,它将选择具有以“_size”结尾的类属性的所有输入除了第一个,并从第一个分配值:
$(document).ready(function(){
$("input.replicate").click(function() {
var inputs = $('input[class$="_size"]');
inputs.not(":first").val( inputs.first().val() );
});
});
请注意,如果有多个类分配给输入,我使用的选择器将不起作用 – 在您的示例中没有,但当然可能在最终产品中 – 所以您可能想要做类似的事情这个:
var inputs = $(".1,.2,.3").find("input");
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。