jQuery PJAX / AJAX предотвращает переход по ссылке (), не блокирующий ссылку - PullRequest
2 голосов
/ 19 февраля 2012

Я бы хотел запретить PJAX-клики по ссылкам, если не введено поле ввода.

Вот код:

$('a.pjax').pjax({container: '#main_content'}).live('click', function(event){ 
   if(keyed){ 
        console.log('yes, you typed');
   }
   else if(keyed==false){
        console.log('no, please type something');
        event.preventDefault();                                                 
   }
}); 

Моя проблема в том, что, несмотря на правильное определение условия, PJAX по-прежнему загружает страницу независимо от preventDefault().

Есть мысли о том, почему это не работает?

1 Ответ

3 голосов
/ 21 февраля 2012

Кажется, что функция pjax всегда срабатывает с настройками, которые у вас есть.

Однако должно работать следующее:

$(document).on('click', 'a.pjax', function (event) {
    if (keyed) {
        console.log('yes, you typed');
        return $.pjax.click(event, '#main_content');
    }
    else {
        console.log('no, please type something');
        return false;
    }
});
...