表单提交监听器阻止在IE8上提交表单

时间:2014-06-19 02:45:58

标签: javascript forms google-tag-manager

我已使用Google跟踪代码管理器为网站设置了通用分析跟踪功能,并且已成功使用表单提交侦听器来跟踪不同的表单提交。我今天注意到IE8中的用户无法提交登录表单。登录表单是网站上唯一的本机表单,而所有其他表单都是通过来自Eloqua的javascript添加的。

一旦我禁用表单提交监听器,IE8用户就可以毫无问题地登录。由于用户可能必须登录网站的页面,因此我必须暂时禁用所有表单跟踪。

表单HTML

<form class="login-prompt__form" method="POST">
        <div class="input input--text">
            <input id="UserName" name="UserName" placeholder="Username" type="text" value="" />
        </div>
        <div class="input input--text">
            <input id="Password" name="Password" placeholder="Password" type="password" />
        </div>
        <ul class="button-group">
            <li>
                <button class="btn btn--med" type="submit" formmethod="post" >Log In</button>
            </li>
            <li><a href="/login/recover-password">Forgot password?</a></li>
        </ul>
    </form>

绝对不会生成javascript错误。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我们遇到类似的问题,没有javascript错误。

在我们的案例中,有一个Google代码管理器文档级别

  

document.gtmFormActionFunction()

并且还分配了一个jquery submitHandler。我们还没有弄清楚如何让这两个玩得更好而不是删除其中一个。

以下文章有助于确定问题。 http://www.simoahava.com/analytics/dont-gtm-listeners-work/

他们引用事件传播需要处理文档节点,建议您在适当的地方进行替换:

  

返回false;

  

event.preventDefault();