将复选框值序列化为布尔值
Serialization of Checkbox values into Boolean values
我有一些 js 正在尝试处理复选框值(假设在 "main.js" 中没有处理)
var doctor = _$form.serializeFormToObject();
var mdoMipsCheckbox = $("input[name='MdoMips']:checked");
doctor.MdoMips = mdoMipsCheckbox.val();
视图如下所示:
<input type="checkbox" name="MdoMips" value="@Model.Doctor.MdoMips" class="filled-in" id="doctor-mdomips" @(Model.Doctor.MdoMips ? "true" : "") />
并且 Dto 和 Entity 的模型都有 属性:
[Column("MDO_MIPS")]
[DisplayName("MDO MIPS")]
public bool MdoMips { get; set; }
我的问题是我的序列化对象看起来像:
BirthDate:"25-Dec-1962"
FirstName:"Philip"
Id:"4"
LastName:"Fergus"
MdoMips:**"on"**
MdoOther:"rrr"
Title:"Mr"
验证失败。
我不确定解决此问题的最佳方法是什么,以便我在序列化布尔值 属性 上看到 "true" 或 "false" 值。
感谢任何帮助...
- 将
public bool MdoMips
更改为 public byte MdoMips
。
- 从 html 中删除
@(Model.Doctor.MdoMips ? "true" : "")
,这不是
需要 Angular 进行双向绑定。
使用这个怎么样:
doctor.MdoMips = mdoMipsCheckbox.is(":checked") ? "true" : "false";
我有一些 js 正在尝试处理复选框值(假设在 "main.js" 中没有处理)
var doctor = _$form.serializeFormToObject();
var mdoMipsCheckbox = $("input[name='MdoMips']:checked");
doctor.MdoMips = mdoMipsCheckbox.val();
视图如下所示:
<input type="checkbox" name="MdoMips" value="@Model.Doctor.MdoMips" class="filled-in" id="doctor-mdomips" @(Model.Doctor.MdoMips ? "true" : "") />
并且 Dto 和 Entity 的模型都有 属性:
[Column("MDO_MIPS")]
[DisplayName("MDO MIPS")]
public bool MdoMips { get; set; }
我的问题是我的序列化对象看起来像:
BirthDate:"25-Dec-1962"
FirstName:"Philip"
Id:"4"
LastName:"Fergus"
MdoMips:**"on"**
MdoOther:"rrr"
Title:"Mr"
验证失败。
我不确定解决此问题的最佳方法是什么,以便我在序列化布尔值 属性 上看到 "true" 或 "false" 值。
感谢任何帮助...
- 将
public bool MdoMips
更改为public byte MdoMips
。 - 从 html 中删除
@(Model.Doctor.MdoMips ? "true" : "")
,这不是 需要 Angular 进行双向绑定。
使用这个怎么样:
doctor.MdoMips = mdoMipsCheckbox.is(":checked") ? "true" : "false";