我创建了一个模型,我正在尝试构建类似于单击提交按钮时的值,应将值传递给控制器,看起来像
[HttpPost]
// i am getting checked property but not phoneno to controller
public ActionResult Confirm(Entity s)
{
return view();
}
我的观点
@model MvcApplication3.Models.Entity
@using ( Html.BeginForm("Confirm", "Home", FormMethod.Post))
{
@Html.CheckBoxFor(m=>m.checkedprop,
new
{
@class = "myCheckBox",
phoneno= "1234" //tried different ways none looks working for me
})
<input type="submit" id="ConfirmButton" />
}
模型
public class Entity
{
public bool checkedprop { get; set; }
public int phoneno { get; set; }
}
答案 0 :(得分:2)
您的加价
@Html.HiddenFor(m=>m.phoneno)
在您的控制器中,您可以获得
[HttpPost]
public ActionResult Confirm(Entity s, string phoneno)
{
return view();
}
答案 1 :(得分:1)
更改
@Html.CheckBoxFor(m=>m.checkedprop,new {
@class = "myCheckBox",
phoneno= "1234" //tried different ways none looks working for me
})
到
@Html.CheckBoxFor(m=>m.checkedprop,new {@class = "myCheckBox"})
@{Model.phoneno = 1234}
@Html.HiddenFor(m => m.phoneno)
您的工作原因是您尝试将电话号码设置为复选框的属性。您需要将该电话号码作为单独的字段提交给表单。由于它是硬编码的,并且用户没有输入它,而是从文本框(或其他任何内容)提交它,而是将其作为隐藏字段发送到表单上。