【问题标题】:jQuery validation plugin and .Net WebForm not playing nicely in IE7, works in IE8jQuery 验证插件和 .Net WebForm 在 IE7 中不能很好地运行,在 IE8 中有效
【发布时间】:2009-09-02 13:32:50
【问题描述】:

请多多包涵。我的 jQuery 验证插件在 FF、Opera、Safari 和 IE8 中运行良好。但是,IE7 给我带来了问题。我们的后端开发人员坚持使用 .Net WebForm 在服务器上创建表单(至少这是我认为她使用的,它的 .aspx 是我所知道的一切 - 如果有帮助,我可以发布一些代码。)无论如何,在代码中,她的提交按钮如下所示:

<asp:Button ID="btnSubmit" runat="server" Text="Submit the request" OnClick="btnSubmit_Click" />

输出(在 HTML 中)如下所示:

<input type="submit" name="btnSubmit" value="Submit the request" onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " language="javascript" id="btnSubmit" /> 

但是,当我用简单的&lt;button type="submit" name="Submit" value="submit" class="button"&gt;Submit&lt;/button&gt; 替换她的代码时,验证工作,错误消息弹出,云部分等。但她说她不能使用这个。叹。

所以我想我的问题是:如何让 jQuery 与她的方法很好地配合?我正在使用 jQuery 为表单添加一些不错的 UI 触摸,例如手风琴、日历小部件等,我希望这是锦上添花。我也很确定 js 的启动格式正确,没有多余的逗号等 js 错误。

感谢您提供的任何帮助。

【问题讨论】:

    标签: asp.net jquery validation


    【解决方案1】:

    根据按钮的 onclick 事件(“if (typeof(Page_ClientValidate).....”)中发出的 javascript,看起来您正在混合 ASP.NET 验证和 jQuery Validate 插件。尝试添加 CausesValidation ="false" 按钮的属性,从而强制它执行正常的表单提交,验证插件会响应。

    【讨论】:

    • 这个也试过了,还是不行。谢谢。
    • 既然已经添加了 CausesValidation,请发布服务器控制标记和呈现的 HTML(与您的原始问题相同)。
    • K.这是服务器代码: 这是 HTML 输出: 没有验证,但它不起作用。我把它包裹在一个
    • 啊哈!它是 $%^& 按钮元素。谢谢你。 :P
    【解决方案2】:

    jQuery 是否需要将类设置为“提交”才能使 jQuery 验证插件工作? 这似乎是 .Net 生成的 html 和您编写的 html 之间最明显的区别。如果是这种情况,请将“CssClass="submit"”添加到 aspx 页面中的 asp:button 元素。这将在生成的 html 中转换为“class="submit"”。

    <asp:Button CssClass="submit" ID="btnSubmit" runat="server" Text="Submit the request" OnClick="btnSubmit_Click" />
    

    【讨论】:

    • 试过了 - 不行。不过谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-08
    • 1970-01-01
    相关资源
    最近更新 更多