使Html.TextBoxFor在MVC 4中将非初始化的整数属性显示为空字符串

时间:2013-03-26 18:08:33

标签: asp.net-mvc asp.net-mvc-4 html-helper html.textboxfor

我已将Html.TextBoxFor添加到我的视图中:

@Html.TextBoxFor(x => x.zip, String.Empty, new { @class = "gsTextBox", placeholder = "Enter your zip" });

它在输入中显示0而不是空字符串。

我也找到了this解决方案,但似乎很可怕。或者这是一个很好的方法?或者也许我应该使用javascript将空字符串替换为0?

3 个答案:

答案 0 :(得分:2)

试试这个 - 让int nullable

public int? zip { get;set; }

答案 1 :(得分:1)

或者,如果您不想使用nullables:

{{1}}

空字符串将导致占位符出现。如果出现验证错误或类似情况并返回页面,此代码将显示用户输入的值...或占位符(如果不大于0)。

答案 2 :(得分:0)

如果您不打算通过Nullable属性更改模型,则

使用javascrip或Jquery方式。

$("input.no-init").val("");