2013-04-24 6 views
6

पर मेरा कोई इनपुट फ़ील्ड है जो मैं कस्टम सत्यापन जोड़ने की कोशिश कर रहा हूं (किसी अन्य फ़ील्ड के आधार पर आवश्यक)। अगर मैं आवश्यक और funcCall() डालता हूं तो मैं देख सकता हूं कि दो त्रुटियां लौटा दी गई हैं। अगर मैं केवल funcCall डाल दिया कुछ भी वापस नहीं किया जाता है। मुझे पता है कि यह फ़ंक्शन और स्थिति में हो रहा है क्योंकि मैंने console.log() किया है लेकिन किसी कारण से ऐसा लगता है कि त्रुटि को दिखाने में विफल होने के लिए इसे प्रारंभिक नियम की आवश्यकता है।jquery प्रमाणीकरण इंजन func काम नहीं कर सकता अगर केवल

कॉल:

<input type="text" class="validate[funcCall[validatePassportRequired]]" id="form_register_passport_number" value="" name="passport_number" size="50"> 

फंक्शन:

function validatePassportRequired(field, rules, i, options) { 
    if ($('#register_for').val()!='Local') { 
    return options.allrules.required.alertText; 
    } 
} 

तो अगर मैं करने के लिए कॉल बदलने के लिए:

class="validate[required, funcCall[validatePassportRequired]]" 

मैं दो मिल * यह फ़ील्ड आवश्यक है

Do मुझे एक और वैधता है funcCall के साथ एन नियम?

उत्तर

12

त्रुटि संदेश लौटने से पहले केवल निम्न पंक्ति जोड़ें और बदले संदेश में आवश्यक के बजाय फ़ंक्शन का नाम .alertText से पहले रखें। आपके मामले में

rules.push('required'); 

@sunzyflower अपने कार्य इस तरह देखना होगा ..

function validatePassportRequired(field, rules, i, options) { 
    if ($('#register_for').val()!='Local') { 
    rules.push('required'); 
    return options.allrules.validatePassportRequired.alertText; 
    } 
} 
+0

बहुत बहुत शुक्रिया:

आप (पुराने) मुद्दे के बारे में अधिक जानकारी चाहते हैं! यह वास्तव में मुझे इसके साथ दोहरा संदेश देना शुरू कर दिया, इसलिए मैंने वापसी की और केवल नियमों को छोड़ दिया। ('आवश्यक') और यह पूरी तरह से काम करता है! – sunzyflower

+0

जीवन उद्धारक :) – Andrej

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