Tôi gặp một số vấn đề với việc xác thực một Email.Xác nhận địa chỉ email bằng cách sử dụng các thuộc tính kiểu dữ liệu ASP.NET MVC
Trong mẫu của tôi:
[Required(ErrorMessage = "Field can't be empty")]
[DataType(DataType.EmailAddress, ErrorMessage = "E-mail is not valid")]
public string ReceiverMail { get; set; }
Theo quan điểm của tôi:
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@Html.TextBoxFor(m => m.ReceiverMail, new { @placeholder="E-mail"}) <br />
@Html.ValidationMessageFor(m => m.ReceiverMail)
Bây giờ nó được một cách chính xác cho thấy tôi "Field không thể để trống" khi bạn rời sân trống. Nhưng khi bạn điền vào một địa chỉ email không hợp lệ như: "fwenrjfw" thì biểu mẫu không nói "E-mail không hợp lệ".
Tôi làm cách nào để lấy biểu mẫu xác thực dữ liệu nhập dưới dạng địa chỉ email? Tôi đang tìm kiếm một số trợ giúp với điều này.
Skool cũ là tốt, nhưng kể từ khi Microsoft thực hiện một thuộc tính, nó giải quyết các lỗi và sự giám sát có thể xảy ra trong một số tình huống, quốc gia, múi giờ hoặc hành tinh. SO tốt nhất của nó để sử dụng một cơ sở mã phát hành đầy đủ hơn regex tùy chỉnh. Ví dụ, regex của bạn có xem xét các tên miền cấp cao nhất mới không? – ppumkin
Regex đó trông giống như nó sẽ thất bại cho bất kỳ địa chỉ email với các ký tự nước ngoài hoặc nhiều ký tự không chuẩn trong đó. – Dwayne
Xác thực địa chỉ email bằng regex thường là ý tưởng tồi tệ ... nhưng nếu bạn phải, có một tham chiếu tuyệt vời tại đây .. http://www.regular-expressions.info/email.html – Molomby