2011-06-17 30 views
1

我使用asp.net mvc也使用jQuery ui对话框,我在jQuery对话框中显示partialview,但Firefox给我这两个错误下面的文件。我发布一个Ajax.BeginForm()到服务器。在第一篇文章中工作正常,但在第二篇文章中它销毁我的对话。Firefox“jQuery未定义”错误在asp.net mvc 3

  • jquery.validate.min.js

  • jquery.validate.unobtrusive.min.js

错误:jQuery是没有定义

我没有这个问题在IE,请帮忙。

@model MvcSmkApplication.Models.LoginModel 

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 


@using (Ajax.BeginForm("AuthenticateUser", "Members", new AjaxOptions 
{ 
HttpMethod = "POST", 
InsertionMode = InsertionMode.Replace, 
UpdateTargetId = "LoginForm", 
OnSuccess = "OnSuccess", 
})) 
{ 

<div id="LoginForm"> 
    @Html.ValidationSummary(true) 
    <fieldset> 
     <legend></legend> 
     <div class="editor-label"> 
      @Html.LabelFor(model => model.EmailAddress) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.EmailAddress)<br /> 
      @Html.ValidationMessageFor(model => model.EmailAddress) 
     </div> 
     <div class="editor-label"> 
      @Html.LabelFor(model => model.Password) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(model => model.Password)<br /> 
      @Html.ValidationMessageFor(model => model.Password) 
     </div> 
     @foreach (ModelState modelState in ViewData.ModelState.Values) 
     { 
      foreach (ModelError error in modelState.Errors) 
      {   
      <div style="color: Red;">@error.ErrorMessage</div> 
      } 
     } 
     <div style="float: right;"> 
      <input type="submit" value="Login" class="buttonAsLink" /> 
     </div> 
    </fieldset> 
</div> 
} 
<script type="text/javascript"> 

function OnSuccess(e) { 
    if (e["success"] == "true") { 
     $("#dialog").dialog("close"); 
     location.reload(); 
    } 
    else { 
     //alert('error'); 
    } 
} 

</script> 
+0

您是否检查过FF中的HTML源代码?请检查脚本文件的路径是否正确。也尝试使用源代码中的路径访问脚本并将其粘贴到浏览器中。 – ChristiaanV

+0

您是否在页面中引用了jquery和jQuery UI?在您提供的代码中无法看到它们。也许他们在您的布局中引用?如果是这种情况,您是否使用FireBug验证过您提供给这些脚本的路径是否正确,并且服务器不会返回404错误? –

+0

是的,他们在布局和路径是正确的。我用@ Url.content但结果是一样的。 – Eric

回答

0

这里是我发现3周后,研究解决方案。

<script type="text/javascript"> 

function OnSuccess(e) { 
    if (e["success"] == "true") { 
     $("#dialog").dialog("close"); 
     location.reload(); 
    } 
    else { 
     $("#dialog").html(e); 
     return false; 
    } 
} 
</script> 
1

您可以尝试引用您的脚本是这样的:

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")"></script> 
+0

感谢您的回复,两种方式生成这样的东西:

  • 11. 自定义错误在ASP.NET MVC处理
  • 12. Mozilla Firefox中未定义的错误
  • 13. jQuery的Ajax调用导致未定义的错误在Firefox 18.0.1
  • 14. ASP.Net MVC 3 JsonResult重定向错误
  • 15. 自定义asp.net mvc 3 jquery.validate.unobtrusive
  • 16. 自定义ViewEngine ASP.NET MVC 3
  • 17. ASP.net MVC 3错误:CS0103
  • 18. ASP.NET MVC 3部署错误
  • 19. jQuery未定义错误
  • 20. Firefox错误 - document.all未定义(WebUIValidation.js)
  • 21. Firefox中的“未定义”javascript错误
  • 22. $是未定义的Firefox与jQuery的错误
  • 23. ASP.NET MVC 3远程验证组自定义错误消息
  • 24. MVC 3自定义错误不显示
  • 25. Jquery未定义,并且$未在MVC4中定义错误
  • 26. $未定义 - asp.net MVC 4
  • 27. 在asp.net MVC中的jquery错误MVC
  • 28. “jQuery的”是未定义的(在asp.net MVC 2.0接头jQuery库)
  • 29. ASP.NET MVC 4自定义句柄错误
  • 30. 自定义错误页面asp.net mvc 4