3
試圖驗證我的電話號碼,以便任何人都不能在輸入框內輸入隨機字母。我確實有不引人注意和有效的腳本。到目前爲止,我已經盡了模型中的幾件事情,在MVC中實現驗證
[RegularExpression(@"^(?:(?:\(?(?:00|\+)([1-4]\d\d|[1-9]\d?)\)?)?[\-\.\ \\\/]?)?((?:\(?\d{1,}\)?[\-\.\ \\\/]?){0,})(?:[\-\.\ \\\/]?(?:#|ext\.?|extension|x)[\-\.\ \\\/]?(\d+))?$", ErrorMessage = "Not a valid Phone number")]
[Display(Name = "Phone")]
public string SMSPhoneNumber;
或
[DataType(DataType.PhoneNumber)]
public string SMSPhoneNumber;
這是我的看法
<form role="form" action="#">
@Html.AntiForgeryToken()
<div class="form-group">
<label class="control-label"><b>Phone Number</b></label>
@Html.TextBoxFor(model => model.SMSPhoneNumber, new {@class = "form-control", @placeholder = "Enter Phone Number", @id = "phoneNumber", Name = "phoneNumber", data_val_required = "Please enter a phone number"})
@Html.ValidationMessageFor(model => model.SMSPhoneNumber, null, new { @class = "text-danger" })
</div>
<button type="button" data-dismiss="modal" class="btn dark btn-outline"> Cancel</button>
<button type="button" data-toggle="modal" id="" class="btn green" onclick="javascript: updateDatabase();">Submit</button>
</form>
這是我的控制器
[HttpPost]
public ActionResult UpdatePhoneNumber(string phoneNumber)
{
if (ModelState.IsValid)
{
return View();
}
}
的驗證仍然無法正常工作,會發生什麼是問題嗎?
感謝
還要注意你'的onclick =「JavaScript的:updateDatabase ();'這表明你可能使用ajax來提交,它可能不會獲得客戶端驗證,除非該函數也可以在發佈到控制器之前通過檢查'.valid()'來正確實現。 –
建議您編輯您的問題也包括在內,所以我可以如有必要,請檢查並更正 –
已編輯,我的頁面正在按照我的要求進行操作,這裏只有問題是所有的驗證部分。 – Draklin