Live In On Jquery

Ciao a tutti!

Avrei un problema con jQuery, per vari motivi ho dovuto aggiornare la versione di jquery nel progetto, il problema è che nella nuova versione il .live() non è più in uso.

Il fatto è che nel form mi ha generato questo script:


jQuery('#yw0_button').live('click',function(){

jQuery.ajax({

url: "\/...\/index.php\/registration\/captcha?refresh=1",

dataType: 'json',

cache: false,

success: function(data) {

jQuery('#yw0').attr('src', data['url']);

jQuery('body').data('captcha.hash', [data['hash1'], data['hash2']]);

}

});

return false;

}); 

che mi genera un errore di questo tipo: TypeError: jQuery(…).live is not a function

Come faccio a cambiare il .live in .on?

Grazie mille,

ciao!

non ti conviene usare più versioni di jquery? capisco che può essere un problema in più gestirle, ma fare si può fare. Magari la versione aggiornata la carichi solo nei casi necessari.

Cmq per cambiare il codice generato dalle crud, dovresti mettere mano ai file del framework, ma non saprei indirizzarti.

Che versione di Yii e di jQuery stai usando?

Di jquery la 1.9 e di yii la 1.1.13.

Grazie!

Sei sicuro di usare la versione 1.1.13… perche in questa versione live() non si usa piu… puo essere che non hai svuotato l’assets folder?

PS. Vado un po’ OT ma quando arriverà Yii2.0 avremo il composer che gestirà da solo queste interdipendenze delle librerie. Per ora dobbiamo stare un po’ più attenti.

Hai ragione! Non mi ero accorto che non era l’ultima versione ma avevo copiato quella più vecchia ora il problema è risolto, grazie mille!

Suggerisco un piccolo trick per aggiornare velocemente git al momento del bisogno. Molti lo scaricano dalla pagina di download, io preverisco la via "git".


$ git clone git@github.com:yiisoft/yii

Per aggiornare yii dalla 1.1.13 (attuale) alla successiva (1.1.14) sarà sufficiente lanciare


$ git checkout 1.1.14

ed automaticamente verranno scaricati SOLO gli aggiornamenti.