在jQuery中的动态对象上使用.each
Using .each on dynamic objects in jQuery?
有很多问题似乎在问这个问题,但最终他们想要的只是附加.click事件,而不是每个事件,所以所有这些事件中普遍接受的答案都包括$("body").on("click", ".selector", function(){});
,这绝对不是我想要的。
我有一些生成的输入,我需要同时更改每个输入的值。通常我会$(".inputs").each(function(){$(this).val("new-value")};
或类似的东西,但是,由于动态方面的原因,我不能。
那么你会如何做$("body").on("each", ".inputs", function(){});
呢?
实际上,它就像运行setTimout内部的.each一样简单。
setTimeout(function(){
$(".inputs").each(function(){$(this).val("new-value")});
}, 5000);
$.each
适用于添加的任何新元素。
http://jsfiddle.net/4SV7n/
每次都做一些不同的事情:
http://jsfiddle.net/4SV7n/1/
这里有一个更好的脚本,它完全按照OP的要求执行。
function doWithInput(i, e){
$(e).val("done with each");
}
$(document).ready(function(){
$("#button").click(function(){
$("#inputs").append("<input class='inputs_new' type='text' /><br />");
});
$(".inputs").each(doWithInput);
});
$(document).on("DOMNodeInserted", ".inputs_new", function(e) {
$(e.target).removeClass('inputs_new').addClass('inputs');
doWithInput(0, e.target);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="inputs">
<input class="inputs" type="text" placeholder='type in me' /><br />
</div>
<button type="button" id="button">Add</button>
您可以在动态元素上完美地使用$(".inputs").each(function(){$(this).val("new-value")};
。您只需要在动态添加元素后重新运行脚本。
从评论中,我发现对"每一个"都存在一些误解Each不是一个事件,因此如果调用了Each,则不会触发任何事件。如果你想跟踪添加的元素,因为你无法控制它们的添加时间,你需要一个计时器:
setInterval(function(){ $(".inputs").each(function(){$(this).val("new-value")}; },500);
this
:怎么样
http://jsfiddle.net/cudts0f2/
我希望动态生成的文本在每个上生效
相关文章:
- 为什么我可以在Array属性对象中找到Javascript Array for Each方法
- 为什么我不能用for Each迭代对象
- $.each 中的“this”,当需要使用“this”访问对象的函数时
- 如何在jquery中从$.each循环创建对象数组
- 正在更新$.each中的对象数组
- jQuery插件返回this.each并为每个对象添加函数属性
- 在jquery each()迭代器函数中访问JS对象
- 在 $.each 中创建新的 assoc 对象
- 使用 $.each 将值放入数组对象中
- 正确使用 $.each 对象属性
- 我如何从递归 $.each 中的对象中删除元素
- 使用 $.each 循环访问具有多个属性的对象数组
- 无法使用 $.each() 函数向对象添加属性
- 读取 json 以使用 jQuery .each() 创建对象数组
- jQuery:在 $.each 中从字符串类型转换为字符串对象
- jQuery: $.each() 递归清空对象
- JSON 中的对象与 $Each 循环,如何获取值
- ractive js :与模板中键部分关联的嵌套对象列表的直接 DOM 插入排序/排序 #each 顺序
- 将字符串转到_内的对象.each
- .each循环遍历对象时出错