Мой код jQuery:
$(document).ready(function(){
$('#StudentRegisterForm').validate({
rules: {
email: {
required:true,
email:true
}
}
});
});
и в моем электронном письме формы:
<td><?php echo $form->input('email',array('class required email')); ?></td>
Проблемой является jQuery, проверяют сменные работы над атрибутом полей ввода 'имя', но cakephp называет его как data[Student][email]
. Если я использую это имя в jQuery его бросок ошибки. Если я переименовываю поле в cakephp, почтовое значение не передается базе данных. Есть ли какой-либо другой окольный путь?
Вам нужно лишь сделать небольшую доработку, установить правило с помощью строки, например, так:
$(function(){ //short for $(document).ready(function(){
$('#RegisterForm').validate({
rules: {
"data[Student][email]": {
required:true,
email:true
}
}
});
});
Вчера у меня была точно такая же проблема. Ответ заключается в "принудительном" введении имени в поле ввода, например:
echo $form->input('cheque_number',array('name'=>'InvoiceChequeNumber','value'=>''));
Я потратил некоторое время, пытаясь избежать этого, но не смог найти никакой альтернативы. Для CakePHP нет никаких проблем, когда вы делаете это вот так.