2016-03-02 66 views
0

我的模型有一个Dataype(Datatype.Currency),它是一个小数对象。MVC数据类型货币触发器数字小键盘

我试图强制视图触发ipad/iphone上的数字小键盘,当用户点击进入它。它适用于对象是INT但不适用于Decimal的情况。

继承人的模型的片段(我使用正则表达式无济于事试过):

[Display(Name = "Bid Price")] 
     [DataType(DataType.Currency)] 
     //[RegularExpression("([1-9][0-9]*)")] 
     public decimal BidPrice { get; set; } 

这里是视图的片段。有没有办法以某种方式使用新的{@inputtype =“number”}?

<div class="col-md-10"> 
       @Html.EditorFor(model => model.BidPrice, new { @type= "number" }) 
       @Html.ValidationMessageFor(model => model.BidPrice) 
      </div> 

请帮助,如果你有这个工作。

+0

是的,这工作!我不知道我有多少网站试图找到答案。谢谢!!! – dave317

回答

3

EditorFor()方法不支持添加htmlAttributes除非您使用MVC-5.1或更高版本。如果你的语法是

@Html.EditorFor(m => m.BidPrice, new { htmlAttributes = new { @type= "number" } }) 

如果没有,那么你就需要使用TextBoxFor()方法来添加属性

@Html.TextBoxFor(m => m.BidPrice, new { @type= "number" })