Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 输入类型为“的onClick”;“图像”;_Javascript_Html - Fatal编程技术网

Javascript 输入类型为“的onClick”;“图像”;

Javascript 输入类型为“的onClick”;“图像”;,javascript,html,Javascript,Html,我一直在反复寻找一个明确的答案。基本上,我想将Google Analytics事件跟踪添加到表单提交中-我希望添加一个onClick,但我很难确定是否所有浏览器都支持它 我问过设计表单的人,她说他们没有使用按钮类型的原因是在某些浏览器中提交表单时出现问题,但不记得是哪个浏览器 那么,它是否可以跨浏览器工作,或者我应该切换到button 相关代码如下: <input name="submit" id="submitme" type="image" src="/graphics/crea

我一直在反复寻找一个明确的答案。基本上,我想将Google Analytics事件跟踪添加到表单提交中-我希望添加一个onClick,但我很难确定是否所有浏览器都支持它

我问过设计表单的人,她说他们没有使用按钮类型的原因是在某些浏览器中提交表单时出现问题,但不记得是哪个浏览器

那么,它是否可以跨浏览器工作,或者我应该切换到button

相关代码如下:

<input name="submit" id="submitme" type="image" 
  src="/graphics/creative/landing_pages/popup/ibd_signmeupbtn.gif" 
  alt="Sign Me Up!" 
  onClick="_gaq.push(['_trackEvent', 'Registrations', 'Register', 'Lightbox']);"
  tabindex="8"  />


编辑我已经定义了gaq。这个问题的真正目的是确保对输入图像使用onClick是可以做到的。

尝试将其连接到稍微不同的位置

<input name="submit" id="submitme" type="image" 
    src="/graphics/creative/landing_pages/popup/ibd_signmeupbtn.gif" 
    alt="Sign Me Up!" 
    onclick="SignMeUp();"
    tabindex="8"  />

并按如下方式创建您的函数:

<script type="text/javascript">
    function SignMeUp()
    {
        if (!!_gaq) // make sure _gaq is defined
            _gaq.push(['_trackEvent', 'Registrations', 'Register', 'Lightbox']);
    }
</script>

函数SignMeUp()
{
如果(!!_gaq)//确保定义了_gaq
_gaq.push([''u trackEvent',Registrations',Register',Lightbox']);
}

您不需要定义_gaq变量,但需要导入google脚本

下面是我的代码示例

var _gaq = _gaq || [];
// i'm using asp.net web forms and getting google analytics code from config
_gaq.push(['_setAccount', '<%= ConfigurationManager.AppSettings["google.analytics.code"] %>']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
var _gaq=_gaq | |[];
//我正在使用asp.net web表单,并从配置中获取谷歌分析代码
_gaq.push([''设置帐户','');
(功能(){
var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;
ga.src=('https:'==document.location.protocol?'https://ssl' : 'http://www“)+”.google analytics.com/ga.js';
var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);
})();

这不是用ASP.Netyes标记的。这是正确的,但在“gaq.push”(['''u setAccount','value'])中也是如此;您可以硬编码该值,或者使用任何其他可用机制来获取该值。如果它是php,你会找到你。这是asp.net特有的代码中唯一的一段,全部都是通用javascript。我想说的是,必须导入google脚本才能使gaq正常工作。是的,这将是一个重要的步骤;)。但对于不使用ASP.Net的人来说,这些代码可能会让人感到困惑。我有同样的问题,但不知道这个答案是否仍然是“最好的”,因为在过去的5年里,万维网发生了变化。谢谢