Отправить не будет работать после проверки Zend, AJAX / JQuery - PullRequest
0 голосов
/ 09 ноября 2011

Следующая проблема, которую я имею, я сделал для формы проверки ajax / jquery.Проверка работает нормально после отправки, когда что-то не так во время проверки, я получаю сообщение об ошибке.Но проблема в том.Когда что-то 'OK', оно не будет отправлять ввод.

Мой код js;

    ValidateAjax = {

    initialize: function(formid, endpoint){
        end_url = endpoint;
        form_id = '#'+formid;

        $('form').submit(function(){
            var formElementID = $(form_id+' input').attr('id');
            $('.loader').hide();
            var check = ValidateAjax.doValidate(formElementID);
            return false;
        })
    },

    doValidate: function(id){
        $('.loader').show();
        var url = end_url;
        var data = $(form_id).serialize();
        $.post(url,data,function(response){
            $('#'+id).parent().find('.errors').remove();
            if (response[id])
                $('#'+id).parent().append(ValidateAjax.getHTML(response[id]));
        },'json');
    },

    getHTML: function(errArray){
        $('.loader').hide();
        var o = '<ul class="errors">';
        $.each(errArray,function(key,value){
            o+='<li>'+ value+'</li>';
        });
        o+='</ul>';
        return o;
    }                

}

Мой индексный просмотр;

<? echo $this->form; ?>

Мое действие по проверке;

public function validateformAction()
{
        $this->_helper->layout()->disableLayout();
        $form = new Application_Form_Add();
        $form->isValidPartial($_POST);
        $this->_helper->json($form->getMessages());
}

Мое действие по указанию;

public function indexAction()
{

    $form                 = new Application_Form_Add();
    $this->view->form     = $form;

    // submit new blog - Validated by ajax
    if ($this->_request->isPost()) {
        if ($form->isValid($_POST)) {
            $data = $form->getValues();
            //do something
            $this->_redirect('/wall/');
        }
    }
}

Я надеюсь, что кто-то может мне помочь.

С уважением, Ник

1 Ответ

0 голосов
/ 13 ноября 2011

Вы всегда возвращаете «ложь» после отправки вызова.Вам необходимо вернуть 'true', если нет ошибок валидации.

...