2010-07-12 73 views

回答

0

我們終於選擇了另一個黑客。加載文檔後,我們替換了特立尼達提交表單的函數,並在驗證失敗後觸發一個事件,然後這個鉤子循環遍歷所有驗證消息,尋找具有錯誤的輸入ID(並設置它的樣式)。醜陋,但工作。這是使用jQuery(只是一個草圖,未經測試)的想法ilustration:

$(window).load(function() { 
//save original function for form submit 
var originalSubmit = window.submitForm; 
//replace function for form submit with custom implementation that triggers some event in case of validation failure 
window.submitForm = function (form, doValidate, parameters, isPartial) { 
    var retval = originalSubmit(form, doValidate, parameters, isPartial); 
    if (!retval) { 
     $(window).trigger('failedFormValidations', [form, doValidate, parameters, isPartial]); 

    } 

} 

//bind a listener for failed validations which performs the desired behavior 
$(window).bind('failedFormValidations', function(event, form, doValidate, parameters, isPartial) { 
    // reset all inputs to nonhighlighted state, then loop through all labels and hightlight inputs with error 
}); 
} 
相關問題