2011-06-17 44 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