Jquery 还原回文本()
目前,我正在尝试以下方法:Jquery 还原回文本(),jquery,revert,Jquery,Revert,目前,我正在尝试以下方法: 通过按“编辑”按钮,它正在更改类中的所有文本。对特定文本有害 按下“还原”按钮,应将旧内容恢复到原始状态 现在我有两个伤害,都是一个独特的文本,都被翻译成其他东西。现在,当我恢复到原始文本时,它在一个伤害中显示两个伤害。你可以在这里看到我的小提琴: 如何确保将正确的字符串放回正确的.harms 谢谢。您可以利用jQuery.data()存储每个危害的原始内容 单击编辑后,原始数据将存储在数据中,单击恢复时,其值将恢复 //实现: var originalconte
谢谢。您可以利用
jQuery.data()
存储每个危害的原始内容
单击编辑
后,原始数据将存储在数据中,单击恢复
时,其值将恢复
//实现:
var originalcontentdata attributeName=“originalContent”;
函数setRevertableText($el,text){
$el.data(originalContentDataAttributeName,$el.text());
$el.text(text);
}
函数文本($el){
//您可能需要在此处检查数据属性是否存在
$el.text($el.data(originalContentDataAttributeName));
$el.removeData(原始内容数据属性名称);
}
//用法:
$(“#编辑”)。单击(函数(){
$(“.harms”)。每个(函数(){
setRevertableText($(this),“我希望它恢复到原始状态。”);
});
});
$(“#还原”)。单击(函数(){
$(“.harms”)。每个(函数(){
回复文本($(本));
});
});代码>
这是第一次测试
这是第二次测试
编辑
还原
编辑之前,应先保存旧文本:
$(function() {
var myOldContent;
$('#edit').click(function() {
myOldContent = $('.harms').text();
$('.harms').text('I want this to revert back to original state.');
});
$('#revert').click(function() {
$(".harms").text(myOldContent);
});
});
这应该有效您可以将旧值存储在中。然后在单击“还原”时再次检索它
$(函数(){
$(“#编辑”)。单击(函数(){
$('.harms')。每个(函数(){
$this=$(this);
//将当前文本存储在旧数据中。
$this.data('old',$this.text());
//设置新文本。
$this.text('我希望它恢复到原始状态');
});
});
$(“#还原”)。单击(函数(){
$('.harms')。每个(函数(值、索引){
$this=$(this);
//从数据中提取旧文本。
var old=$this.data('old');
//设置元素上的文本。
$this.text(旧版);
});
});
});代码>
这是第一次测试
这是第二次测试
编辑
还原
所以当你点击.edit
哪个.harms
元素应该受到影响?谢谢@Yeldar Kurmangaliyev,你的回答帮了我很多忙,效果很好。
$(function() {
var myOldContent;
$('#edit').click(function() {
myOldContent = $('.harms').text();
$('.harms').text('I want this to revert back to original state.');
});
$('#revert').click(function() {
$(".harms").text(myOldContent);
});
});
$('#edit').click(function(){
$('.hurms').each(function(i, elem){
elem = $(elem);
elem.attr('prev-content', elem.text());
elem.text('you template text');
});
});
$('#revert').click(function(){
$('.hurms').each(function(i, elem){
elem = $(elem);
elem.text(elem.attr('prev-content'));
});
});