在ASP.NET中禁用特殊字符进入@ Html.TextboxFor

时间:2014-03-19 18:13:08

标签: javascript asp.net-mvc html5

我有这段代码:

  <div class="form-group">
            @Html.LabelFor(model => model.Log.InventoryNo, new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.TextBoxFor(model => model.Log.InventoryNo, new {maxlength = "10", title = "e.g. PC3044241; PRN3044241; LT3044241", autocomplete = "off"})
                @Html.ValidationMessageFor(model => model.Log.InventoryNo)
            </div>
        </div>

我希望它只能在文本框中输入数字和字母。它不应该允许文本框中的任何其他字符,如果他们尝试,则忽略用户。我想这会是客户端验证吗?有没有办法使用JavaScript或HTML 5?

1 个答案:

答案 0 :(得分:2)

如果您有固定格式,您可以尝试使用jQuery input mask插件。

验证数据服务器端非常重要。可以禁用Javascript,手动提交表单,这将绕过任何客户端验证。

鉴于title属性中的示例:

jQuery(function($){
   $("#input-id").mask("aa9999999");
});

您可以看到一个有效的示例here