Tôi có một biểu mẫu có trường "Địa chỉ thanh toán của bạn giống với địa chỉ giao hàng của bạn". Nếu người dùng nhấp vào nút radio "Không", ul # billingAddress ẩn được hiển thị. Các trường chứa trong ul # billingAddress được yêu cầu nếu nó hiển thị, đó là nếu ul có display: block.jQuery xác nhận tính hợp lệ của các yếu tố ẩn chỉ khi hiển thị
Làm cách nào để viết một addMethod tùy chỉnh cho jquery validate.js chỉ yêu cầu những người đó nếu trường hiển thị? Đây là những gì tôi có mà không làm việc.
$.validator.addMethod ("BillingSameAsShipping", function(value, element) {
var billingFields = ['billingAddress1','billingAddress2','billingCity','billingState','bilingZip']
if ($("#billingAddress").is('visible') && billingFields.val('') {
return false;
} else
return true;
}, "Please fill in the required billing information");
Điều này, rõ ràng là được cắm. Tôi cần phải làm cho nó làm việc cho mỗi một trong đó là trong var.
Cảm ơn!
Bạn đã cố gắng làm cho chúng không chỉ vô hình, mà còn thiết lập chúng để vô hiệu hóa? Nó chỉ là một đoán, nhưng kể từ khi các lĩnh vực hình thức vô hiệu hóa sẽ không được truyền anyway, tôi hy vọng rằng không có xác nhận xảy ra trên chúng. – Tomalak
Tôi không cần phải làm cho chúng bị vô hiệu hóa, tôi chỉ muốn chúng chỉ xác thực khi hiển thị. Trừ khi làm cho chúng bị vô hiệu hóa là dễ dàng hơn? –
Tôi có nghĩa là làm cho chúng cả vô hình * và * vô hiệu hóa. Với jQuery, điều này là dễ dàng đủ. – Tomalak