我有一個包含data-product屬性的產品 div ,它的值是物件。我想將產品資料放入gtag。
但是為什么當我做每一個時,只有 1 個資料?當我想訪問時data.id,data.name為什么它是未定義的?
$(document).ready(function(){
const promotions = []
$(".product-item").each(function(){
const data = $(this).data('product');
promotions.push({
"id": data.id,
"name": data.name
})
})
//gtag('event', 'view_promotion', {
//promotions
//});
$('.product-item').each(function(){
$(this).on("click", function(e){
const data = $('.product-item').data('product')
console.log(data)
})
})
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="product-item" data-product='{"id" : 123, "name" : "Product 1"}'>
Product 1
</div>
<div class="product-item" data-product='{"id" : 124, "name" : "Product 2"}'>
Product 2
</div>
<div class="product-item" data-product='{"id" : 125, "name" : "Product 3"}'>
Product 3
</div>
uj5u.com熱心網友回復:
更改您的 HTML 代碼,對我有用:
<div class="product-item" data-product='{"id":124,"name":"Product 1"}'>
Product 1
</div>
<div class="product-item" data-product='{"id":125,"name":"Product 2"}'>
Product 2
</div>
<div class="product-item" data-product='{"id":126,"name":"Product 3"}'>
Product 3
</div>
uj5u.com熱心網友回復:
根據API,屬性值必須是有效的 JSON,包括帶引號的屬性名稱。
在您的情況下,它沒有正確格式化為 JSON,因此它不起作用。將您的格式設定data-product為有效的 JSON。
一旦 JSON 被修復,就可以回圈促銷
$(document).ready(function(){
let promotions = []
$(".product-item").each(function(){
const data = $(this).data('product');
promotions.push({
"id": data.id,
"name": data.name
})
})
gtag('event', 'view_promotion', {
promotions
});
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/376505.html
標籤:javascript 查询 目的 gtag.js
上一篇:復雜的物件操作
