2011-06-20 40 views
7

क्या कोई जानता है कि मैं एक कमांड के साथ ValidationEngine द्वारा सभी बनाई गई त्रुटियों को कैसे हटा सकता हूं? मैंने कोड के स्निपेट को जोड़ा जो प्लगअप को पॉपअप बनाने के लिए उपयोग करता है। अगर आपको और जानकारी चाहिए, तो कृपया मुझे बताएं।jquery.ValidationEngine - त्रुटि पॉपअप को हटा रहा है

निम्नलिखित कोड त्रुटियों बनाता है:

buildPrompt : function(caller,promptText,type,ajaxed) {   // ERROR PROMPT CREATION AND DISPLAY WHEN AN ERROR OCCUR 

     if(!$.validationEngine.settings){ 

      $.validationEngine.defaultSetting() 

     } 

     deleteItself = "." + $(caller).attr("id") + "formError" 



     if($(deleteItself)[0]){ 

      $(deleteItself).stop(); 

      $(deleteItself).remove(); 

     } 

     var divFormError = document.createElement('div'); 

     var formErrorContent = document.createElement('div'); 

     linkTofield = $.validationEngine.linkTofield(caller) 

     $(divFormError).addClass("formError") 



     if(type == "pass") $(divFormError).addClass("greenPopup") 

     if(type == "load") $(divFormError).addClass("blackPopup") 

     if(ajaxed) $(divFormError).addClass("ajaxed") 



     $(divFormError).addClass(linkTofield); 

     $(formErrorContent).addClass("formErrorContent"); 

स्रोत कोड: http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/

समस्या: उपयोगकर्ता अपने स्क्रीन पर त्रुटियाँ हैं और उसे एक लिंक पर क्लिक करता है कि पेज के किसी अन्य भाग के लिए स्क्रॉल, त्रुटियां एक पूर्ण स्थिति पर रहती हैं।

मैं क्या देख रहा हूं: एक फ़ंक्शन जो सभी त्रुटि संदेशों को हटा देता है, वहां एक से अधिक हो सकते हैं।

उत्तर

4
function removeError(){$(".formError").remove()}; 

यह इतना आसान है ... यह मुझे हमेशा से बाहर ले जाने के लिए क्यों ले गया। .formError क्लास के साथ eerything को हटाकर सभी पॉपअप को मारता है।

+1

निम्नलिखित जवाब ($ ('# formID1') से स्टैंडर्ड समाधान जोड़ने कर रहा हूँ। ValidationEngine ('hideAll');) अधिक बेहतर है। – aholub7x

+0

इच्छित विधि Ryu के उत्तर में दी गई है। –

10

यह सत्यापन इंजन में एक पूर्वनिर्धारित कार्य भी है।

$('#formID1').validationEngine('hideAll'); 
0

मैं इस सीएसएस की तरह कुछ का उपयोग कर रहा

.formError{ 
-moz-animation: cssAnimation 0s ease-in 3s forwards; 
/* Firefox */ 
-webkit-animation: cssAnimation 0s ease-in 3s forwards; 
/* Safari and Chrome */ 
-o-animation: cssAnimation 0s ease-in 3s forwards; 
/* Opera */ 
animation: cssAnimation 0s ease-in 3s forwards; 
-webkit-animation-fill-mode: forwards; 
animation-fill-mode: forwards;} 

@keyframes cssAnimation { 
to { 
    width:0; 
    height:0; 
    overflow:hidden; 
}} 

@-webkit-keyframes cssAnimation { 
to { 
    width:0; 
    height:0; 
    visibility:hidden; 
}} 

से मैं इस जेएस

jQuery(document).on('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd', '.formError', function (e) { 
     e.target.remove(); 
    }); 
+0

यह संदेशों को एक-एक करके हटा देगा :) –

संबंधित मुद्दे