JQuery - 恢复被替换的元素
JQuery - Restore Element That was Replaced
我有按钮编辑和按钮保存。当我单击编辑按钮时,它会用textbox
或textarea
替换我的元素。如果我单击按钮保存,它使用另一个功能,如何将元素恢复到replaceWith()
之前的状态?
<div class="will-be-turned-into-texbox"></div>
function edit(){
// Replace above div with texbox
}
function save_edit(){
// Change back texbox to the original div
}
在replaceWith
文档中,有一个提示:
说明:将匹配元素集中的每个元素替换为提供的新内容,并返回已删除的元素集。
(我的强调)
所以。。。存储返回值,当您想将其放回时,请使用append
或(实际上)再次replaceWith
将其放回。
无端的例子:
var replaced;
$(document).on("click", "#replace", function() {
// Save what's being replaced
replaced = $(this).replaceWith('<button id="restore">Restore</button>');
});
$(document).on("click", "#restore", function() {
// Restore it
$(this).replaceWith(replaced);
});
<button id="replace">Replace</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
请注意使用委托的事件处理程序,以避免重新连接事物。
相关文章:
- 只要存在,就用另一个元素替换一个元素
- 用HTML元素替换字符串的一部分
- 将父元素替换为其内容
- 单击时将SVG元素替换为另一个
- 用javascript(无jquery)将元素替换为文本
- 在不同的html文件中将html从一个元素替换为另一个元素
- 如何用另一个元素替换一个元素
- 将所有元素替换为另一个 jquery
- 使用本机 JS 将 HTML 元素替换为字符串内容
- 将 DOM 元素替换为仅开始标记(或结束标记)
- JQuery 将表单元素替换为文本
- 如何将 html 元素替换为 ajax 响应
- 将数组中的元素替换为相应的字典项 JavaScript
- JQuery:用另一组元素替换一组元素的优雅方式
- 将内容可编辑元素替换为有序列表时保持可编辑性
- 用新的克隆元素替换克隆元素
- 用新的DOM元素替换()任意文本
- 如何为没有ID的元素替换类名
- 如何使用regex将段落元素替换为新行
- 是否可以用另一个td元素替换HTML表td元素