2014-03-19 39 views
1

被輸入到@ Html.TextboxFor我有這樣的代碼:關閉特殊字符在ASP.NET

<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做到這一點?

回答

2

如果您想要強制執行固定格式,則可以嘗試使用jQuery input mask插件。

重要的是你驗證數據服務器端。 Javascript可以被禁用,並手動提交表單,這將繞過任何客戶端驗證。

給出的例子在你的title屬性:

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

你可以看到一個工作示例here