MVC 3 Razor视图BeginForm表单帖子不起作用

时间:2012-09-30 07:41:00

标签: asp.net-mvc-3 razor html-helper

当按下按钮形式的帖子不起作用。伙计们有什么想法?

Razor VIew

<div id="contactform">
    <h3>
        Contact Form</h3>
    @using (Html.BeginForm("contacts", "Home"))
    {
        @Html.AntiForgeryToken()
        @Html.ValidationSummary()


        <fieldset>
            <ol>
                <li>
                    @Html.TextBoxFor(m => m.Name)
                    @Html.ValidationMessageFor(m => m.Name)
                </li>
                <li>
                    @Html.TextBoxFor(m => m.Email)
                    @Html.ValidationMessageFor(m => m.Email)
                </li>
                <li>

                    @Html.TextBoxFor(m => m.Phone)
                    @Html.ValidationMessageFor(m => m.Phone)
                </li>
                <li>

                    @Html.TextAreaFor(m => m.Message)
                    @Html.ValidationMessageFor(m => m.Message)
                </li>
            </ol>
            <input type="button" value="contacts"/>
        </fieldset>

    }
</div>

模型

public class ContactModel
{
    [Required]
    [DataType(DataType.Text)]
    [Display (Name="Name")]  
    public string Name { get; set; }

    [Required]
    [DataType(DataType.EmailAddress)]
    [Display (Name="Email")]
    public string Email { get; set; }

    [Required]        
    [Display (Name="Phone")]
    public string Phone { get; set; }

    [Required]
    [DataType(DataType.MultilineText)]
    [Display(Name = "Message")]   
    public string Message { get; set; }


}

家庭控制器

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult contacts(ContactModel contact)
{
    if (ModelState.IsValid)
    {

    }


    return View();
}

1 个答案:

答案 0 :(得分:1)

如果您想提交您的数据到服务器,您需要submit按钮才能浏览器(如果您没有使用javascript发布)将数据发送到服务器< / p>

所以改变:

<input type="button" value="contacts"/>

为:

<input type="submit" value="contacts"/>

它应该有用。