jQuery pjax/ajax prevengono adefault () che non blocca il collegamento da fare clic su
-
27-10-2019 - |
Domanda
Vorrei impedire il clic di PJAX di un collegamento a meno che non sia una casella di input.
Ecco il codice:
$('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();
}
});
Il mio problema è che nonostante la condizione sia stata determinata correttamente, Pjax carica ancora la pagina indipendentemente dal preventDefault()
.
Qualche idea sul perché non funziona?
Soluzione
Sembra che la funzione PJAX sparerà sempre con la configurazione che hai in atto.
Tuttavia, quanto segue dovrebbe funzionare:
$(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;
}
});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow