使用 attr() 将名称和值添加到数据属性数组
Add name and value to data attribute array with attr()
我正在尝试在数据属性中构建和排列,但是当我尝试添加名称和值时,我得到了 [object, object]
<div class="wrapper"></div>
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").attr("data-history", {
id: $post_id,
url: $post_url
});
我首先创建了数据属性 "history",然后它向其中添加了 [object, object]。在此之后,我需要在下一个事件中向 "history" 数组添加另一个 name/value。
有两个问题,一个是 class 属性中不应包含点 (.),另一个是必须将属性添加为 JSON(或使用 .data
,取决于你想如何使用属性)
<div class="wrapper"></div>
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").attr("data-history", JSON.strinify({
id: $post_id,
url: $post_url
}));
或
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").data("history", {
id: $post_id,
url: $post_url
});
编辑:
要添加新项目,只需获取旧数据并将新数据添加到其中
$post_url = "http://example.ai";
$post_id = "750";
var data = $(".wrapper").attr("data-history");
if (!data){
data = [];
}
else{
data = JSON.parse(data);
}
data.push({
id: $post_id,
url: $post_url
});
$(".wrapper").attr("data-history", JSON.strinify(data));
或
$post_url = "http://example.ai";
$post_id = "750";
var data = $(".wrapper").data("history");
if (!data){
data = [{
id: $post_id,
url: $post_url
}];
}
else{
data.push({
id: $post_id,
url: $post_url
});
}
$(".wrapper").data("history", data);
我正在尝试在数据属性中构建和排列,但是当我尝试添加名称和值时,我得到了 [object, object]
<div class="wrapper"></div>
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").attr("data-history", {
id: $post_id,
url: $post_url
});
我首先创建了数据属性 "history",然后它向其中添加了 [object, object]。在此之后,我需要在下一个事件中向 "history" 数组添加另一个 name/value。
有两个问题,一个是 class 属性中不应包含点 (.),另一个是必须将属性添加为 JSON(或使用 .data
,取决于你想如何使用属性)
<div class="wrapper"></div>
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").attr("data-history", JSON.strinify({
id: $post_id,
url: $post_url
}));
或
$post_url = "http://example.ai";
$post_id = "750";
$(".wrapper").data("history", {
id: $post_id,
url: $post_url
});
编辑:
要添加新项目,只需获取旧数据并将新数据添加到其中
$post_url = "http://example.ai";
$post_id = "750";
var data = $(".wrapper").attr("data-history");
if (!data){
data = [];
}
else{
data = JSON.parse(data);
}
data.push({
id: $post_id,
url: $post_url
});
$(".wrapper").attr("data-history", JSON.strinify(data));
或
$post_url = "http://example.ai";
$post_id = "750";
var data = $(".wrapper").data("history");
if (!data){
data = [{
id: $post_id,
url: $post_url
}];
}
else{
data.push({
id: $post_id,
url: $post_url
});
}
$(".wrapper").data("history", data);