我有一个问题,我的跨域跟踪的形式。我有一个酒店客户,他有一个表单,根据所选的选项提交给两个预订引擎之一。然而,据我所知,它看起来不像以传统方式设置的表单,因为它不包含"action",而是包含"href"。下面的代码。
<!--start quicksearch -->
<div id="qs" align="center">
<div align="center"><img src="images/qs_title.gif" alt="Quick Search">
<table width="200" border="0" cellpadding="0" cellspacing="0">
<!--<form method="post">--><form method="post" onsubmit="pageTracker._linkByPost(this);">
....
<td width="35%" valign="bottom"><div align="left"><a href="javascript:sendToCBE();"><img src="quicksearch/continue-buttom_dreams.gif" alt="Continue" width="83" height="24" border="0" onclick="mojo_roi('continue'); pageTracker._trackEvent('Button', 'Click', 'QuickSearchWidget');"></a></div></td>
</tr>
</table></td>
</tr>
</form>
</table>
</div>
</div>
<!--end quick search-->
我的感觉是,因为没有一个"动作"调用,它没有传递任何cookie信息。我在其他网站上使用的其他表格都使用了"action"作为参考。任何想法吗?是。_linkbypost在正确的位置,还是需要移动?
任何见解都会很有帮助。
谢谢!
是的,这不起作用。Google分析依赖于POST功能的本地使用。
缺少"action"表明该表单是由JavaScript使用非本地表单功能管理的。因此,您需要调整管理表单的JavaScript逻辑(假设是称为sendToCBE
的函数)。
_linkByPost
是一个试图为99%的用例做所有事情的函数,但是,在这种情况下,它没有帮助。
你需要用_getLinkerUrl
做一些自定义查询字符串调整
看起来像(伪代码):
function submit_redirect_function(){
var url = .... // the logic that creates the URL you're redirecting to onsubmit
url = pageTracker._getLinkerUrl(url); //appends the linker query string to the URL.
window.location = url;
}
如果您分享更多关于这个表单是如何实现的细节(例如,sendToCBE
或mojo_roi
究竟做了什么),我可以提供更具体的指导。