2012-09-30 47 views
1

当登录按钮表单发布不起作用。伙计们有什么想法?MVC 3剃刀视图BeginForm表单发布不起作用

Razor视图

<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

请定义“帖子不工作”:您的操作未被击中?你会得到什么响应代码?你在浏览器的开发工具/ firebug/fiddler中看到了这个请求吗? – nemesv

回答

1

如果你想提交你的数据,你需要为了一个submit按钮,浏览器(如果你不是用JavaScript发布)服务器发送数据到服务器

因此改变:

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

到:

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

它应该工作。

+0

或者,使用''。 – Dai

+0

感谢它的工作正常。感谢Nemesv! – Velu