gpt4 book ai didi

javascript - 如何完全替换 HTML 元素上的数据对象

转载 作者:行者123 更新时间:2023-11-28 01:40:36 30 4
gpt4 key购买 nike

有没有更快的方法来替换元素数据对象中的所有内容?

//get old data keys to delete
var old_data = $(".f")[0].dataset;

for (var key in old_data){
delete old_data[key];
}
//new data to attach to `.f` element
var new_data = $(".s")[0].dataset;

for (var key in new_data){
$(".f").data(key, new_data[key]);
}

console.log($(".f").data());

我尝试过更简洁的变体,例如

  //errors
$(".f").data() = {};
$(".f").data(new_data);

//doesn't delete old keys/values
var new_data = $(".s").data();
$(".f").data(new_data);

有没有更快的方法来做到这一点?

最佳答案

您需要同时使用 jQuery .removeDatajQuery .removeAttr() API。

.removeData( [list] ); 
.removeAttr( [name] );

[list] - An array or space-separated string naming the pieces of data to delete. When called with no arguments, .removeData() removes all values.

更新

.removeAttr( [name] ) “强制”你一次移除一件你也可以使用:

.removeData( [name] );

请记住[name]形式为 data-<name><name>分别。例如删除 data-myid使用:

.removeAttr( 'data-myid' ); //and 
.removeData( 'myid' );

关于javascript - 如何完全替换 HTML 元素上的数据对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26364354/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com