2016-07-11 31 views
0

Wir versuchen, den folgenden Code zu verwenden, um Bestelldetails an Google Analytics zu übergeben. Ich habe mehrere Posts gelesen, die sehr nah beieinander lagen, konnte aber mein Problem nicht lösen. Das Problem liegt in der Definition oder Verwendung der Variablen "item". Die Zeile nach unten: 'name': '<% = item [0]%>', Fehler, die sagen, dass "Element im aktuellen Kontext nicht existiert".Verwendung von C# Variable in JavaScript Google Analytics, variabler Bereich

Ich freue mich über Vorschläge.
Danke.

function TrackOrderLines() { 
     var orderLines = "<%= GetOrderLines() %>"; 
     if (orderLines !='') { 
      var items = orderLines.split(','); 

    for (var i = 0; i < items.length; i++) 
    { 
     if (items[i] !='') { 
      var item = items[i].split('|'); 

//This is here just to prove that we are getting the correct value in item. 
      document.getElementById("demo").innerHTML = item[0]; 

     ga('ecommerce:addItem', { 
      'id': '<%# salesOrder.OrderType + "-" + salesOrder.OrderNumber.ToString() + "-" + salesOrder.Company %>',      // Transaction ID. Required. 
      'name': '123', // Product name. Required. 
      **'name': '<%= item[0] %>',** 
      //'category': 'Party Toys',   // Category or variation. 
      //'price': '111',     // Unit price. 
      //'quantity': '123'     // Quantity. 
}); 
         } 
       } 
      } 
    } 

Antwort

1

es scheint, dass item eigentlich eine JS-Variable ist, aber Sie versuchen, es von C# drucken mit <%= %>

Bitte versuchen Sie dies:

ga('ecommerce:addItem', { 
      'id': '<%# salesOrder.OrderType + "-" + salesOrder.OrderNumber.ToString() + "-" + salesOrder.Company %>',      // Transaction ID. Required. 

      'name': item[0], 
      //'category': 'Party Toys',   // Category or variation. 
      //'price': '111',     // Unit price. 
      //'quantity': '123'     // Quantity. 
}); 
+0

Du hast Recht, danke für darauf hinweisen. Wir haben verschiedene Varianten ausprobiert, um dies zum Laufen zu bringen und haben das übersehen. – bairdmar