我在MVC5项目中使用标准的HTML TextBoxFor助手,并希望将文本框设置为仅接受数值 . 所以我把类型设置为数字 .

@Html.TextBoxFor(model => model.PP_IMP_M1, "{0:0}", new { @type ="number"})

我不确定HTML输入类型=数字的功能应该是什么,但是当我只键入文本框和制表符中的字母时,文本框会自动清除,因为值不是数字 . 这是预期和正确的 . 但是,如果我将第一个字符键入为数字并使用随机字母后跟其中,则混合文本值将保留在文本框中 . 我知道字符“e”可能已被接受,但我输入的内容如“12hgf”和“45dddd”,文本框在我标签出来后接受该值 .

这是类型设置为数字的输入的预期行为吗?我希望type = number只接受数值而不必使用javascript或jquery .

任何有关这个问题的帮助将不胜感激 .

舒亚