【发布时间】:2013-02-19 12:22:04
【问题描述】:
JQuery
$(document).ready(function () {
var EmailContainer = $('#EmailContainer');
var url = EmailContainer.attr('data-url');
EmailContainer.load(url, function () {
var Emailform = $('#EmailForm');
$.validator.unobtrusive.parse(Emailform);
Emailform.submit(function () {
debugger;
var Emailform = $(this);
if (Emailform.valid()) {
var SendEmailUrl = EmailContainer.attr('Json-Url');
var UserModel = { From: $('#From').val(), To: $('#To').val(),
Subject: $('#Subject').val(),
Description: $('#Description').val() }
$.post(SendEmailUrl, UserModel, function (data) {
Emailform.html(data);
Emailform.removeData('validator');
Emailform.removeData('unobtrusiveValidation');
$.validator.unobtrusive.parse(Emailform);
});
}
return false;
});
});
});
管理控制器部分视图
@model _1.Areas.Email.Models.User
@using (Html.BeginForm("SendEmail", "Admin", FormMethod.Post, new { id = "EmailForm" }))
{
@Html.LabelFor(i => i.From);
@Html.TextBoxFor(i => i.From);
@Html.ValidationMessageFor(i => i.From);
<br />
@Html.LabelFor(i => i.To);
@Html.TextBoxFor(i => i.To);
@Html.ValidationMessageFor(i => i.To);
<br />
@Html.LabelFor(i => i.Subject);
@Html.TextBoxFor(i => i.Subject);
@Html.ValidationMessageFor(i => i.Subject);
<br />
@Html.LabelFor(i => i.Description);
@Html.TextBoxFor(i => i.Description);
@Html.ValidationMessageFor(i => i.Description);
<br />
<input type="submit" value="Send Email" id="SendMail" />
}
问题 - 提交管理控制器的部分视图时。它给出“500 内部服务器错误”
更新 - 1
正如您在部分视图中看到的 - 我在 HTML.BeginForm 中提到了该操作,并且我还提交了表单。我认为请求被提交了不止一次?
【问题讨论】:
-
您需要指定错误是什么。您的开发工具中的响应选项卡应该会显示它。
-
更新了我的查询。请检查。
标签: jquery asp.net-mvc asp.net-mvc-3