我使用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