在ajax表单提交原因中输入maxlength字段;未捕获的语法错误:意外标记u“;

在ajax表单提交原因中输入maxlength字段;未捕获的语法错误:意外标记u“;,ajax,submit,unobtrusive-validation,maxlength,Ajax,Submit,Unobtrusive Validation,Maxlength,当我使用ajax提交一个包含带有“maxlength”属性的文本字段的表单时,我得到一个javascript错误:uncaughtsyntaxerror:Unexpected-token u(jquery-1.9.1.min.js:3) 如果删除maxlength属性,一切都会正常运行 我的HTML,将我的页面精简到最低限度以复制问题: <html> <head> <script src="http://code.jquery.com/jqu

当我使用ajax提交一个包含带有“maxlength”属性的文本字段的表单时,我得到一个javascript错误:
uncaughtsyntaxerror:Unexpected-token u(jquery-1.9.1.min.js:3)

如果删除maxlength属性,一切都会正常运行

我的HTML,将我的页面精简到最低限度以复制问题:

<html>
    <head>
        <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

        <script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
        <script src="/Scripts/jquery.validate.js"></script>
        <script src="/Scripts/jquery.validate.unobtrusive.js"></script>
    </head>
    <body>
        <form action="#" data-ajax="true" id="form0" method="post">
             <input id="deposit" name="numberValue" type="text" class="despositInput" maxlength="8" value="1000">
             <input type="submit" value="go">
        </form>    
    </body>
</html>

无法确定我做错了什么-可能是visual studio模板提供的jquery脚本不兼容?非常感谢您的帮助,谢谢。

这似乎是与jQuery 1.9结合使用时的一个错误

在本文中,建议使用js文件的补丁

我复制了您的问题,并通过在html中添加一个具有所需属性的div来解决它,以防止向json解析提供一个未定义的div

    <form action="#" data-ajax="true" id="form0" method="post">
        <div data-valmsg-for="numberValue" data-valmsg-replace="true">deposit not valid</div>
        <input id="deposit" name="numberValue" type="text"  maxlength="8" value="1000">
        <input type="submit" value="go">
    </form>    

存款无效

这个问题还有一个有待解决的问题。投票表决这个问题,让它在微软内部得到优先考虑

我似乎无法用您提供的代码片段重现您的错误。您能为我们制作一个JSFIDLE吗?值得注意的是:根据下面的答案,
maxlength
触发了这里的问题,而真正的问题是一般的“不引人注目”验证,而不是特定于
maxlength
属性。@rene同意错误的原因是相同的,因此修复是相同的。这两个问题有不同的诊断信息,对于搜索如何解决同一问题的用户来说,每个问题都可能有用。以重复方式结束一个问题是否保留此搜索功能?如果是的话,我支持。回答得很好。“div”和js补丁解决方案可以很好地解决问题。在bug报告中找到更多信息:最后我删除了对“jquery.validate.*”文件的引用,因为它们没有在我的用例中添加任何内容。