xem xét kịch bản này để xác nhận:
function validateForm (validCallback) {
$('#first-name').add($('#last-name')).add($('#address')).each(function () {
// validating fields and adding 'invalid' class to invalid fields.
});
// doing validation this way for almost 50 fields (loop over 50 fields)
if ($('#holder .invalid').length == 0) {
// submitting data here, only when all fields are validated.
}
}
Bây giờ, vấn đề của tôi là, những nếu khối được thực hiện trước khi vòng đã kết thúc. Tôi dự kiến phần thân của validateForm
sẽ được thực thi đồng bộ, nhưng có vẻ như each()
hàm jQuery được thực thi không đồng bộ. Tôi có đúng không Tại sao điều này không làm việc?
each
chính nó được xử lý đồng bộ. Bạn đang bắt đầu một số hoạt động không đồng bộ của riêng bạn từ bên trong vòng lặp?
each
là đồng bộ, nhưng mã bên trong có thể không ...