【发布时间】:2019-07-17 09:57:01
【问题描述】:
我有模型属性int? CaseId
public class TaskDetailsVm
{
public TaskDetailsVm(Task task)
{
CaseId = task.CaseID;
}
public int? CaseId { get; set; }
}
正在观看:
@Html.HiddenFor(x => x.CaseId) => 0
@Html.Hidden("CaseId", Model.CaseId) => 0
@Html.Hidden("qwe", Model.CaseId) => real value
<input type="hidden" id="CaseId" name="CaseId" value="@Model.CaseId" /> => real value
在浏览器中我看到了这个:
<input data-val="true" data-val-number="The field CaseId must be a number." id="CaseId" name="CaseId" type="hidden" value="0">
<input id="CaseId" name="CaseId" type="hidden" value="0">
<input id="qwe" name="qwe" type="hidden" value="22906">
<input type="hidden" id="CaseId" name="CaseId" value="22906">
为什么我会看到以下内容?我没有看到任何脚本来覆盖这个值。我该如何解决?
同样对于第一行代码,由于某些我无法理解的原因,我看到了额外的属性 data-val="true" 和 data-val-number="The field CaseId must be a number."。
【问题讨论】:
-
请向我们展示查看代码和生成的匹配 HTML(从浏览器查看源代码)。请明确哪个是哪个。
-
请告诉我们
Model类型的类代码。 -
向我们展示您渲染 HTML 的代码(返回此视图模型的方法)。我猜你是从控制器传递 CaseId 值为 0 的。
-
不,我传递值!= 0 或 null
-
@A.Gladkiy For
HiddenFor:@Html.HiddenFor(x => x.CaseId, new {Value = @Model.CaseId})
标签: c# razor html-helper