私は昨日からプッシュメソッドで配列を渡すことを試みてきました。JSの配列を追跡コードプッシュメソッドで追加する
Criteoと呼ばれるトラッキングコードがあり、動作させるには以下の情報を入力する必要があります。 viewBasketを除くすべてが問題ありません。
<script type="text/javascript">
window.criteo_q = window.criteo_q || [];
window.criteo_q.push(
{ event: "setAccount", account: 11111 },
{ event: "setEmail", email: "[email protected]" },
{ event: "setSiteType", type: "d" },
{ event: "viewBasket", item: [
{ id: "product_id_1", price: price_1, quantity: quantity_1 },
{ id: "product_id_2", price: price_2, quantity: quantity_2 }
/* add a line for each item in the user's basket */
]}
);
</script>
だから、アレイを作成し、データクリテオとそれを移入は、(製品ID、価格及び数量である)を必要とします。コンソールで正しい構造を見ることはできましたが、コードに渡すとうまくいきません。私はこれを参照することができるコンソールで
(最初の部分は、私は、アレイ内に押し込ま二行であり、2つ目は、全配列である):正確{ id:"20020-278", price: 119, quantity: 1},
{ id:"20009-129", price: 927, quantity: 3},
Array[2]
0: "{ id:"20020-278", price: 119, quantity: 1},"
1: "{ id:"20009-129", price: 927, quantity: 3},"
length: 2__proto__: Array[0]
私はそれを必要としてではなく、何らかの理由でそれがありませんうまくいかない。私はそれをJSON配列に変換しようとしましたが、変数を持たない通常の行を渡すだけでしたが、私はまだこの問題を抱えています。
:私はまた、私はクリテオコードの 'allitems' 配列クリテオデバッグページ<script type="text/javascript">
window.criteo_q = window.criteo_q || [];
window.criteo_q.push(
{ event: "setAccount", account: 11111 },
{ event: "setEmail", email: "[email protected]" },
{ event: "setSiteType", type: "d" },
{ event: "viewBasket", item: [
allitems
]}
);
</script>
がこのように表示されるパスそのシンボルに{ ..
<script type="text/javascript">
...
...
var full_line = "\{ id:\""+pid+"\", price: "+price+", quantity: "+quantity+"\},";
//var full_line = "\{ id:20020-278, price:119, quantity:1\},";
//var full_lineJson = JSON.stringify(full_line);
console.log(full_line);
allitems.push(full_line);
</script>
をエスケープ
結果は次のとおりです。
Product ID Price Quantity
20010-278 69 1
しかし、あなたは構造が何とか壊れているのを見ることができます。私は非常に多くの方法を試しましたが、それでもこれを修正することはできませんでした。配列の構造に何か問題がありますが、他に何ができるのか分かりません。何か提案してください? プロダクトID情報が欠落している:
編集:私はオブジェクトを渡すと、私はオブジェクトを使用する場合
Object {product_id: "20020-278", price: "119", quantity: "1"}
Object {product_id: "20009-129", price: "927", quantity: "3"}
Array[2]
0: Object
price: "119"
product_id: "20020-278"
quantity: "1"
__proto__: Object
1: Object
price: "927"
product_id: "20009-129"
quantity: "3"
__proto__: Object
length: 2__proto__: Array[0]
クリテオサイトでは、このエラーを表示する「項目」プロパティが欠落しているコードは、私が使用
オブジェクト:
<script type="text/javascript">
...
var full_line = {};
full_line.product_id = product_id;
full_line.price = price;
full_line.quantity = quantity;
allitems.push(full_line);
...
</script>
次に、アイテムプロパティのCriteo "viewBasket"内のallitemsを使用しました。
これはコンソールに出力された場合: '0: "{ID:" 20020から278" 、価格:119、数量:1}、" '、あなたが推進している文字列が、オブジェクトではない – Rajesh
オブジェクトをプッシュする必要はありますか?私はCriteoの構造を100%フォローしたかったのです。これは(すべての記号を含む):{id: "product_id_1"、price:price_1、quantity:quantity_1}、 – giancy9
Criteo **は**オブジェクトを使用しています。 – Weedoze