2010-07-20 12 views
9

मेरे jQuery कोड है:CakePHP रूप में jquery.validate प्लगइन का उपयोग कैसे करें

$(document).ready(function(){ 
    $('#StudentRegisterForm').validate({   
    rules: { 
     email: { 
     required:true, 
     email:true 
     } 
    } 
    });  
}); 

और मेरे प्रपत्र ईमेल में:

<td><?php echo $form->input('email',array('class required email')); ?></td> 
समस्या

jQuery मान्य प्लगइन काम करता है पर इनपुट फ़ील्ड विशेषता है 'नाम' लेकिन केकफ़्पी इसे data[Student][email] के रूप में नामित करता है। अगर मैं इस नाम का उपयोग jquery में एक त्रुटि फेंकने में करता हूं। यदि मैं केकफ़्पी में फ़ील्ड का नाम बदलता हूं तो ईमेल मान डेटाबेस को पास नहीं किया जाता है। क्या रास्ते के बारे में कोई और दौर है?

+0

बस अपने उदाहरण में एक छोटी सी टाइपो: जब आप data[modelname][fieldname] इनपुट में वर्ग के नाम देने की तरह Aray का उपयोग करेगा यह, कि याद दिलाने के लिए है। आप वर्ग को सरणी के रूप में चाहते हैं। 'वर्ग' => सरणी ('आवश्यक', 'ईमेल') 'शुद्धता के लिए;) –

+0

मेरे लिए यह काम नहीं कर रहा है लेकिन यह इनपुट (' ईमेल ', सरणी (' कक्षा ' => 'आवश्यक ईमेल')); ?> – chinni776

उत्तर

15

तुम बस, एक छोटी सी ट्वीक जरूरत है एक स्ट्रिंग का उपयोग, इस तरह नियम सेट की जरूरत है:

$(function(){ //short for $(document).ready(function(){ 
    $('#RegisterForm').validate({ 
    rules: { 
     "data[Student][email]": { 
      required:true, 
      email:true 
     } 
    } 
    }); 
}); 
+0

मैं इसे काम नहीं कर सका, लेकिन मैंने नाम उद्धृत नहीं किया! +1 – Leo

+0

@ निक मैं इसे आजमाउंगा – chinni776

+0

हाँ यह काम करता है thanx – chinni776

1

मैं बिल्कुल कल इस समस्या थी।

echo $form->input('cheque_number',array('name'=>'InvoiceChequeNumber','value'=>'')); 

मैं थोड़ी देर के खर्च कर रही बचने की कोशिश कर, लेकिन मैं किसी भी विकल्प नहीं पा सके: इस सवाल का जवाब 'शक्ति' इनपुट क्षेत्र पर नाम, जैसे है। केकपीएचपी के लिए कोई समस्या नहीं है जब आप इसे ऐसा करते हैं।

0

पहला व्यक्ति उपयोग करने के लिए बेहतर है, क्योंकि यह केक this->data structure बनाएगा, लेकिन दूसरा नहीं है।

<?php echo $form->input('email',array('type'=>'text','class' => array('required','email'),'error'=>false,'label'=>false,'div'=>false)); ?> 
+2

पहला क्या? – BoltClock

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