0
レイザーコード -モデルプロパティの値は、カミソリでHTMLチェックボックスから変更されていない
@model SkyTracker.Models.Person
<form method="post" action="Edit">
@Html.CheckBoxFor(m=> m.IsActive, new {@Value=Model.IsActive })
<input type="submit" value="Update"/>
</form>
コントローラは、チェックボックスがオンまたはオフされているかどうか、モデルのプロパティは常にfalseのまま
[HttpPost]
public ActionResult Edit(Person person)
{
var status = person.IsActive; //its always false.
}
をコード - 。
私はここで何を欠席しましたか?
'@Value'を' @ checked'に変更すると、その値が取得されます。 –
最初に 'new {@Value = Model.IsActive}'を削除します(このメソッドは値を正しく設定し、 'HtmlHelper'メソッドを使用するときは' value'属性をオーバーライドしないでください)。 'false'の初期値で' value = "False"を設定すると、チェックボックスがチェックされたときに送信されます( '@ checked'は使わないでください) –