jQuery ReplaceWith 查找新元素
我正在编写一个脚本来用 jQuery 中的 div 替换一些图像。我目前正在使用 replaceWith()
方法,效果很好,但返回原始(已删除)元素而不是新元素。
.replaceWith() 方法,就像大多数方法一样 jQuery 方法,返回 jQuery 对象,以便其他方法可以 拴在它上面。然而,它必须是 注意到原始 jQuery 对象 被返回。该对象指的是 已从 中删除的元素 DOM,而不是具有的新元素 替换它。
如何获取对刚刚创建的新 DOM 元素的引用?
I'm writing a script to replace some images with divs in jQuery. I'm currently using the replaceWith()
method, which works fine, but returns the original (removed) element instead of the new element.
The .replaceWith() method, like most
jQuery methods, returns the jQuery
object so that other methods can be
chained onto it. However, it must be
noted that the original jQuery object
is returned. This object refers to the
element that has been removed from the
DOM, not the new element that has
replaced it.
How can I get a reference to the new DOM element I just created?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
查看工作演示
See a working demo
我相信replaceAll()返回新内容。它的目标和源与replaceWith()相反。
I believe replaceAll() returns the new content. It has the target and source reversed from replaceWith().
在调用 ReplaceWith() 之前,先进行 jQuery 调用以查找父节点,然后使用父节点查找通过 ReplaceWith() 函数插入的新节点。
下面是 $.ajax() 函数的成功处理程序中替换表单的示例:
在此示例中,每个 li 有一个唯一的表单。您可能需要根据构建 DOM 的方式来定制方法。
Precede your call to replaceWith() with a jQuery call to find the parent node and then use the parent to find the new node that was inserted with the replaceWith() function.
Here's an example inside the success handler of a $.ajax() function that replaces a form:
In this example, there was a unique form for each li. You may need to tailor your approach depending on how you construct your DOM.