2015-03-04 21 views
5

Tôi đang sử dụng MVC 4 và tôi muốn có thể xác thực một hàng, từ tập hợp các hàng trong bảng, để đảm bảo rằng các trường được nhập chính xác và vượt qua xác thực .Xác thực phía máy khách trên nút bấm trước khi yêu cầu AJAX

Các thuộc tính được áp dụng một cách chính xác vào mô hình, ví dụ:

[Required] 
[MaxLength(50)] 
[MinLength(5)] 
public string Name {get; set;} 

Bây giờ, về phía khách hàng - làm thế nào để kích hoạt tính năng xác nhận phía khách hàng trước khi gọi một phương pháp AJAX?

Để thêm các biến chứng khác - Tôi có nút để bạn có thể tự động thêm hàng vào bảng, điền vào các trường và cuối cùng nhấn nút cập nhật, sẽ thực hiện POST qua ajax. Nhưng trước khi đăng bài này, tôi muốn xác nhận rằng hàng cụ thể trên phía khách hàng.

Tôi làm cách nào để thực hiện việc này?

cảm ơn bạn

Trả lời

7

Chừng nào bạn đang thực hiện những người giúp đỡ xác nhận trong Xem bạn, điều này thực sự là thực sự đơn giản.

var form = $('#form'); 
$.validator.unobtrusive.parse(form); 
form.validate(); 

if (form.valid()) { 
    .... ajax stuff 
} 

Gọi số trên trước khi bắt đầu yêu cầu http và nó sẽ đảm bảo rằng biểu mẫu của bạn được xác thực.

+0

cảm ơn! Vì vậy, điều này gần như hoạt động. Tôi có một vấn đề mà một chuỗi là cần thiết nhưng phải có tối thiểu 5 ký tự và tối đa là 100. nếu tôi nhập <5, tôi không nhận được bất kỳ lỗi xác nhận nào ở phía máy khách nhưng DO ở phía máy chủ. Khi tôi nhập không có gì trong hộp văn bản, xác nhận trên các tác phẩm của khách hàng. suy nghĩ? Đây là những gì đang được rút ra trên DOM:

+0

Hmm, bạn đã thử sử dụng '[StringLength (50, MinimumLength = 5)]'? –

+0

Được rồi, vì đây là vấn đề khác, tạo câu hỏi mới và bao gồm mã xem, hành động điều khiển và JavaScript được chỉnh sửa của bạn :) Tôi đánh giá cao việc chấp nhận nếu câu trả lời của tôi giải quyết vấn đề "không xác thực" của bạn! –

Các vấn đề liên quan