Chiamata Ajax con Jquery e senza link_to_remote. Possibile?

Ciao a tutti,
ho iniziato ad usare JQuery, ed ecco il primo dilemma:
dovrei creare un semplice link testuale per una chiamata GET (con Ajax),

link_to_remote e’ un metodo di Prototype, voglio usare un solo framework
javascript (JQuery) e quindi vorrei evitare di usarlo.

E’ possibile usare solo “link_to” per rispondere alle chiamate ajax ?
(io non ci sono riuscito)
Cosa dovrei o potrei usare al posto di link_to_remote ?

grazie mille !
Alessandro

prova a dare un’occhiata qua
http://www.notgeeklycorrect.com/english/2009/05/18/beginners-guide-to-jquery-ruby-on-rails/

ciao

2009/10/20 Ale Ds [email protected]

potresti usare questo plugin:

in pratica sostituisce i metodi Prototype con quelli di jQuery in modo
trasparente e senza fastidi. lo uso spesso perchè anche io preferisco
jQuery a Prototype :wink:

ciao,
A.

Ale Ds ha scritto:

Andrea P. wrote:

potresti usare questo plugin:

GitHub - aaronchi/jrails: jRails is a drop-in jQuery replacement for Prototype/script.aculo.us on Rails. Using jRails, you can get all of the same default Rails helpers for javascript functionality using the lighter jQuery library.

in pratica sostituisce i metodi Prototype con quelli di jQuery in modo
trasparente e senza fastidi. lo uso spesso perch� anche io preferisco
jQuery a Prototype :wink:

Si Jrails non e’ male, ma sto cercando di apprendere ed usare solo
Jquery in modo da ottenere codice javascript Unobtrusive.

Alessandro

Piccini R. wrote:

prova a dare un’occhiata qua
http://www.notgeeklycorrect.com/english/2009/05/18/beginners-guide-to-jquery-ruby-on-rails/

ciao

2009/10/20 Ale Ds [email protected]

Ottimo link, mi ha chiarito un po’ di idee.

grazie,
Alessandro

On Thu, Oct 22, 2009 at 11:52 AM, Ale Ds [email protected] wrote:

Si Jrails non e’ male, ma sto cercando di apprendere ed usare solo
Jquery in modo da ottenere codice javascript Unobtrusive.

allora, supponendo che l’URL da richiamare via ajax sia la stessa
indetificata dall’href del tuo link, per farlo bastera’ che tu crei in
link in maniera normale con un link_to:

<%= link_to “click me”, [url], {:class=>‘ajax_click’} %>

poi nel tuo javascript potrai sostituire l’azione del click con la
chiamata ajax, facendo piu o meno cosi (non l’ho provato ma dovrebbe
darti l’idea):

$(document).ready(function () {
$(‘a.ajax_click’).bind(‘click’, function (e) {
$.ajax({
url: this.href,
[ tutte le altre opzioni di ajax… ]
});
});
});

ciao,
Luca

Luca M. wrote:

On Thu, Oct 22, 2009 at 11:52 AM, Ale Ds [email protected] wrote:

Si Jrails non e’ male, ma sto cercando di apprendere ed usare solo
Jquery in modo da ottenere codice javascript Unobtrusive.

allora, supponendo che l’URL da richiamare via ajax sia la stessa
indetificata dall’href del tuo link, per farlo bastera’ che tu crei in
link in maniera normale con un link_to:

<%= link_to “click me”, url, {:class=>‘ajax_click’} %>

poi nel tuo javascript potrai sostituire l’azione del click con la
chiamata ajax, facendo piu o meno cosi (non l’ho provato ma dovrebbe
darti l’idea):

$(document).ready(function () {
$(‘a.ajax_click’).bind(‘click’, function (e) {
$.ajax({
url: this.href,
[ tutte le altre opzioni di ajax… ]
});
});
});

Esatto, hai centrato il dilemma :slight_smile:
In realta’ l’ho risolto ieri leggendo
http://www.notgeeklycorrect.com/english/2009/05/18/beginners-guide-to-jquery-ruby-on-rails
Cmq, col tuo esempio, mi hai confermato che non ho scritto codice
assurdo.
Nel mio caso ho preferito usare la GET,
nella view ho messo:
<%= link_to(‘Refresh table’, url ,:id => ‘id_refresh’) %>

ed in application.js:
$(document).ready(function(){
$(‘#id_refresh’).click(function(){
$.get($(this).attr(“href”), $(this).serialize(), null,
“script”);
return false;
});

nel tuo esempio hai usato piu’ correttamente :class=>‘ajax_click’,
anziche’ :id, dato che probabilmente le chiamate ajax saranno possibili
da diversi link.

grazie 1000,
Alessandro

Ale Ds wrote:

Luca M. wrote:

nel tuo esempio hai usato piu’ correttamente :class=>‘ajax_click’,
anziche’ :id, dato che probabilmente le chiamate ajax saranno possibili
da diversi link.

Entrambe sono corrette e le usi in base a cosa devi fare. Con jquery non
ricordo ma se non sbaglio non c’è differenza tra l’usare un selettore di
classe o tramite id, questo lo rende più comodo rispetto prototype che
ha due metodi diversi che restituiscono un array di oggetti il primo o
un oggetto il secondo.

Tornando a rails, gli helper ajax sono molto comodi e permettono di
sviluppare applicazioni ajax con poco sforzo però se vuoi un
applicazione unobstrusive devi utilizzare questo sistema. Io mi trovo
molto bene con prototype + lowpro.