我已经尝试了很多东西来提交提交按钮以提交到数据库。我没有收到任何错误,测试的两个错误消息,一个来自控制器,一个来自视图,不打印让我知道它不起作用。当用户点击提交时,它会呈现并显示相同的按钮 - 设置语句,而不是用户输入的新文本。不确定如何解决或问题出在哪里。
以下是代码:
控制器:
[HttpPost, ValidateAntiForgeryToken]
public ActionResult Create(TableA Statement)
{
var model = new Test.Models.Tables();
using (var db = new Entities())
if (ModelState.IsValid)
{
TableA tablea = new TableA();
tablea.Statement = model.Statement;
db.TablesA.Add(tablea);
db.SaveChanges();
return RedirectToAction("Index");
}
else
{
return Content("Failed");
}
}
主要观点:
<td>
@if (tablea.Statement != null)
{
@Html.DisplayFor(modelItem => tablea.Statement)
<text>|</text>
@Html.ActionLink("Edit", "Edit", new { id = tablea.ID })
}
else
{
Html.RenderAction("PopUp");
var model = new Test.Models.Tables();
if (model.Statement != null) {
<text>Save Successful!</text>
}
}
</td>
弹出视图:
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
=
<hr />
@Html.ValidationSummary(true)
<div class="form-group">
@Html.LabelFor(model => model.Statement, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Statement)
@Html.ValidationMessageFor(model => model.Statement)
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Save" onsubmit="Create(Statement)" class="btn btn-default">
</div.. etc>
答案 0 :(得分:0)
弹出视图是局部视图还是什么?,我建议将其转换为局部视图,在控制器中你可以做类似的事情
public ActionResult CreatePartial()
{
var pages = pageRepository.Pages;
return PartialView(pages);
}
并在您的视图中使用
@{Html.RenderAction("Popup", "CreatePartial");}
如果你的部分模型与主视图模型不同,如果不使用:
@Html.RenderPartial("ViewName")