如何在MVC中构造表单

本文关键字:表单 MVC | 更新日期: 2023-09-27 18:04:37

我试图在我的MVC应用程序中的视图('编辑器')构建表单,但当用户按下提交按钮时,我得到错误。我的表单有一个CKEditor控件。

我的编辑器视图

@model MyModel
@using (Html.BeginForm("SubmitForm", "Edit"))
{
    <textarea name="editor1" id="editor1" rows="400" cols="100">
    @Model.Text
    </textarea>
    <input type="submit" value="Submit" />
}

我的控制器
[HttpPost, ValidateInput(false)]
public ActionResult SubmitForm(FormCollection collection)
{
    string sText = collection[0].ToString();
    // save string from CKEditor
    return View("Editor");  //<-- I get the error here.
}

下面是从我的控制器返回时的错误。如果我返回View(),我得到相同的错误。

The view 'SubmitForm' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Edit/SubmitForm.aspx
~/Views/Edit/SubmitForm.ascx
~/Views/Shared/SubmitForm.aspx
~/Views/Shared/SubmitForm.ascx
~/Views/Edit/SubmitForm.cshtml
~/Views/Edit/SubmitForm.vbhtml
~/Views/Shared/SubmitForm.cshtml
~/Views/Shared/SubmitForm.vbhtml 

如果我返回我的模型而不是'return(MyModel)',我得到一个不同的错误,'System. 'NullReferenceException @Model。文本

<textarea name="editor1" id="editor1" rows="400" cols="100">
@Model.Text
</textarea>

如何在MVC中构造表单

似乎你的视图是在错误的地方,不能在运行时,当提交动作是从事!在跟踪中,您可以看到搜索的位置。自动做到这一点的最好方法是右键单击动作并选择"添加视图"菜单项。除此之外,表单看起来还不错!