在我的jquery中,我可以调用Post动作。我的问题是,如果ModelState.IsValid返回true,则部分视图将在jquery.dialog中加载。 我该怎么办呢?从过去的4天一直在挣扎。请帮忙。
这是我的代码。 我的帖子如下:
[HttpPost]
public ActionResult Add(MyModel mj)
{
if (ModelState.IsValid)
{
mj.Id = mj.ModifyJob();
}
else
{
return new JsonResult() { Data = "error" };
}
return View(mj);
}
Jquery如下:
<script type="text/javascript">
$(function () {
$('#new-value-link').click(function () {
$.post('<%: Url.Action("Add","MyController") %>',
$('#addform').serialize(),
function (data) {
success(data);
});
return false;
});
});
function success(data) {
if (data != "error") {
var href = this.href;
$('#dialog').dialog({
modal: true,
height: 700,
width: 900,
open: function (event, ui) {
$(this).load(href, function (result) {
$('#Preview-form').submit(function () {
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function (json) {
$('#dialog').dialog('close');
window.location = json.redirectTo;
}
});
return false;
});
});
}
});
}
else {
alert('hi');
}
return;
}
答案 0 :(得分:0)
你应该返回
return new ContentResult("error");