在jQuery中为同一类选择器分配不同的值
assigning different values to the same class selector in jQuery
我不确定在这里使用什么术语,但有没有一种方法可以在按类选择多个不同元素时为它们分配不同的值?在下面的代码中,我希望用类为"value"的相邻(表亲)输入元素的值填充所有class="out"的元素。(事实上,这更复杂,但这是我的简化问题)。
<tr>
<div id="samp1">
<td>Sample 1</td>
<td><input class="value" type="number" value="100"></td>
<td><span class="out"></span></td>
</div>
</tr>
<tr>
<div id="samp2">
<td>Sample 2</td>
<td><input class="value" type="number" value="200"></td>
<td><span class="out"></span></td>
</div>
</tr>
我可以通过以下方式获得表亲的价值:
$('.out').closest('div').find('.value').val();
但我不知道如何将这些值相对地分配给每个元素,而不让多个元素的值相同。。。例如:
$('.out').html($('.out').closest('div').find('.value').val());
给了我一个值,但它将文档中的第一个值(在本例中,是#samp1中输入的值)分配给所有跨度,包括#samp2中的跨度。
我觉得我在寻找类似的东西
$('.out').html($(this).closest('div').find('.value').val());
但这显然不起作用
谢谢你的帮助。
使用jQuery.each
迭代所有.out
元素。
$('.out').each(function(){
$(this).html($(this).closest('div').find('.value').val());
});
http://api.jquery.com/jQuery.each/
描述:一个通用迭代器函数,可用于无缝地迭代对象和数组。数组和类数组具有length属性的对象(例如函数的arguments对象)按数字索引从0到长度-1进行迭代。其他对象是通过其命名属性进行迭代。
$('.out').each(function(index, elem) {
var out = $(elem);
out.html(out.parent().parent().find('.value').val());
});
$('.out').each(function(){
$(this).html( $(this).closest('tr').find('.value').val() );
});
另一件事是你的HTML无效。
您不能将<div>
放在<tr>
标记
相关文章:
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 在循环中分配json值时,值被覆盖
- 动态分配GA增强型电子商务跟踪器
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 如何在jQuery中将函数的输出分配给变量
- 为集合分配大量的模型弹药
- onclick函数需要双击,因为类分配延迟
- Javascript 将变量分配给警报
- 将节点数据分配给另一个变量jstree
- 如何发送分配列表<字符串>到JavaScript数组或可枚举对象
- Javascript变量分配-按类别
- 如何将内容分配给元素
- 为变量分配多个nodejs导出返回值时出现问题
- Jslint 错误:需要条件表达式,而是看到分配
- 为什么可以't我将检索到的文档分配给控制台中的变量
- 将数组的拼接分配给自身时,Javascript控制台打印不起作用
- 为什么当CRLF被分配到<输入>使用php
- 在Javascript中重新分配对象变量时,原始对象会发生什么
- 为什么可以't我跳过函数签名中的参数分配
- 在jQuery中为同一类选择器分配不同的值