0

フォームの送信時に Google イベントが登録されません。

フォームタグは次のとおりです。

<form action="https://xxx.xxxxxxxxxx.com/app/form/process/e3315c4ac3527afdf3da8b6b8b84209f" method="post" onsubmit="_gaq.push(['_trackEvent', 'HCompany', 'HomePage', 'OptIn']);"

イベントが登録される前に新しいページが読み込まれるためだと確信しています。

イベントが登録されるまで送信を遅らせるためにこれを変更する方法を誰かが提案できますか?

4

1 に答える 1

0

(私自身の質問に対する答えを見つけました。) settimeout() 関数を使用して遅延を追加できます。この新しい JavaScript 関数をページに追加しました。

<script type="text/javascript">
function delaysubmit(category, action, label) {

try {
_gaq.push(['_trackEvent', category , action, label]);
} catch(err){}

setTimeout(function() {
document.getElementById("frm1").submit();
}, 100);
}
</script>

次に、フォームタグを次のように変更しました。

<form id="frm1" action="https://xxx.xxxxxxxxxx.com/app/form/process/e3315c4ac3527afdf3da8b6b8b84209f" method="post" onsubmit="delaysubmit('HCompany', 'HomePage', 'OptIn']); return false;">
于 2013-06-02T18:13:03.780 に答える