Rails中的Javascript remote_form_for部分

时间:2009-08-26 15:39:26

标签: javascript ruby-on-rails google-adwords

我的网站上有一个联系表单,使用rails remote_form_for进行操作。在有人提交表单之后,该div中的html被替换为成功消息而不是整个页面重新加载(这样做的原因并不太相关......但基本上这个联系表单是低于折叠的,我不喜欢如果有任何错误/成功消息等,则不希望页面刷新回顶部。

我正在尝试跟踪Google adwords转化次数,以查看有多少访问者提交了联系表单。他们给你的javascript看起来像这样:

<!-- Google Code for Contact Tutor Conversion Page -->
<script type="text/javascript">
<!--
var google_conversion_id = SOME_NUMBER;
var google_conversion_language = "en_US";
var google_conversion_format = "3";
var google_conversion_color = "ffffff";
var google_conversion_label = "SOME_LABEL";
//-->
</script>
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/SOME_NUMBER/?label=SOME_LABEL&amp;guid=ON&amp;script=0"/>
</div>
</noscript>

问题是如果我把它放在remote_form_for的“成功”消息的部分内容中,它不跟踪任何转换!

我想我的问题是,浏览器如何在Ajax调用中执行javascript,就像div中的html被一些新的html取代一样?

我通过在第一个javascript块中添加“alert('hey')”来测试它。它被执行了。然后我尝试从该网址http://www.googleadservices.com/pagead/conversion.js中提取javascript并将其直接粘贴在...中,它似乎现在已经执行并跟踪某些转化 - 但似乎是在报告中。我还尝试评论所有内容,只是使用图片代码来跟踪转化。这也有一些,但似乎在报告中。

报告不足的部分很难衡量,但看起来非常重要...... 50%可能?我想知道浏览器执行javascript的方式是否有所不同。我不反对设置我自己的转换跟踪,所以我可以对它更有信心...但我需要弄清楚如何检测cookie adwords集等。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果图片报告的报告速度与Javascript相同,那么我会断定您的代码运行正常,但报告并不是您所期望的。您使用什么指标来检查?

尝试通过您网站上的网址调用图片,该网址会重定向到Google图片。

e.g。

class TrackingController < ApplicationController
  def track
    ConversionTracking.create!(...)
    redirect_to "http://googleadwordsimage.png"
  end
end

然后,您可以比较分析显示的内容与内部数据库显示的内容。这将确定问题是您的代码是否未在所有浏览器中调用,或者分析是否只是不正确。如果它们不正确,可能是因为某些设置会阻止同一用户或其他什么的双重计数?如果不了解更多有关您的指标等信息,很难知道。