我有一个 MVC4 应用程序,其中一个属性的类型为decimal
,当它加载视图时,它会向文本框添加零 。
如何在第一次加载时将文本框设为空?
[DataType(DataType.Currency)]
[Column(TypeName = "money")]
[Display(Name ="Amount")]
[Required(ErrorMessage = "You must add amount")]
public decimal Amount { get; set; }
@Html.TextBoxFor(model => model.Amount, new { @class = "form-control" })
感谢。
答案 0 :(得分:3)
这是第一次加载时显示为零,因为您没有用任何东西填充模型。因此,ViewEngine会插入十进制类型的“默认”值,即零。
要使它不显示任何内容,您需要使您的小数属性可以为空。
[DataType(DataType.Currency)]
[Column(TypeName = "money")]
[Display(Name ="Amount")]
[Required(ErrorMessage = "You must add amount")]
public decimal? Amount { get; set; }
现在,视图引擎会将默认值视为null并创建一个空文本框。