javascript – 在jQuery中迭代多个类的多个元素

我正在尝试迭代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() );
    });
});

演示:http://jsfiddle.net/2bceZ/

请注意,如果有多个类分配给输入,我使用的选择器将不起作用 – 在您的示例中没有,但当然可能在最终产品中 – 所以您可能想要做类似的事情这个:

var inputs = $(".1,.2,.3").find("input");

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...