我使用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>
您是否檢查過FF中的HTML源代碼?請檢查腳本文件的路徑是否正確。也嘗試使用源代碼中的路徑訪問腳本並將其粘貼到瀏覽器中。 – ChristiaanV
您是否在頁面中引用了jquery和jQuery UI?在您提供的代碼中無法看到它們。也許他們在您的佈局中引用?如果是這種情況,您是否使用FireBug驗證過您提供給這些腳本的路徑是否正確,並且服務器不會返回404錯誤? –
是的,他們在佈局和路徑是正確的。我用@ Url.content但結果是一樣的。 – Eric