我想将用户的输入复制到多个div。 我尝试使用 .each() 因为我想将它应用于后面的每个 div。 到目前为止我已经编写了这段代码,但它仅适用于第一个 div。
<input type="text" name="someText" id="someText">
$("#someText").keyup(function() {
var x = $("#someText").val();
$("#copy").each(function () {
$(this).html(x);
});
});
<div id="copy"></div>
<div id="copy"></div>
最诚挚的问候,
菲利克斯
最佳答案
id = name [CS
]
This attribute assigns a name to an element. This name must be unique in a document.
大多数浏览器都会返回具有给定 ID 的文档的第一个元素,但行为未指定。
如果要选择多个元素,请改用类:
HTML:
<div class="copy"></div>
<div class="copy"></div>
JavaScript:
$("#someText").keyup(function() {
$(".copy").text(this.value);
});
其他一些要点:
- 您不必使用
.each
,setter 方法通常始终应用于集合的所有元素。 - 在事件处理程序内,
this
指的是处理程序绑定(bind)到的元素。您不必再次使用选择器。 - 如果您已经引用了 DOM 元素,那么直接访问其属性之一通常比通过 jQuery 更简单。
关于jquery - 使用 .each() 将输入复制到多个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8518318/