2013-02-05 307 views
0

我有一個帶有訂單的頁面。我想跟蹤谷歌分析中的onSubmit點擊。這是我使用的格式。我還在管理/目標面板的Google分析中添加了正確的信息。GA事件目標跟蹤onSubmit無法在GA中跟蹤

<form method='post' id='form_catalogrequest' name='CatalogRequest' value='CatalogRequest' onSubmit ="return valid(this);_gaq.push(['_trackEvent', 'catalogRequest', 'Submit']);"> 

這是正確的設置方法嗎?有一個更好的方法嗎?因爲當我處理表單時,它不會在GA中進行跟蹤。

http://www.positivepromotions.com/catalogrequest.aspx

回答

2

的問題是,你有你的return valid(this); GA代碼之前,既然你回來的東西,在這之後的所有代碼將被忽略。您需要重構您的onSubmit代碼以允許觸發GA代碼。通過鏈接查看您的valid()函數,如果表單字段有效,它看起來像最終返回true,如果不是,那麼它將返回false

因此,有兩種方法可以去了解這一點:

方法A:包裹的onsubmit代碼在條件

<form method='post' id='form_catalogrequest' name='CatalogRequest' value='CatalogRequest' onSubmit ="if (valid(this)){_gaq.push(['_trackEvent', 'catalogRequest', 'Submit']); return true;} else { return false; }"> 

方法B:內移動的GA碼到您的valid()功能:

function valid(form){ 

    // lots of form validation stuff that I didn't c/p to save space 

    _gaq.push(['_trackEvent', 'catalogRequest', 'Submit']); 
    return true; 
} 

我個人認爲我會去找方法B,因爲它是IMO清潔劑。

+0

方法A適用於我,因爲我無法訪問驗證。這是一個很棒的答案。 – user2043814

+0

太棒了!你能標記爲已解決嗎? ;) –