# Rails, perche' ajax mi risponde in html?

**URL:** <https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485>\
**Category:** IT\
**Created:** [September 6, 2010, 4:39pm UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485 "2010-09-06T16:39:43Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 6, 2010, 4:39pm UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/1 "2010-09-06T16:39:43Z")

</div>

Ho una pagina con un campo di testo.  
Ad ogni modifica del contenuto del campo parte una ricerca in un  
database attraverso una chiamata ajax:

jQuery(document).ready(function($) {  
$("#nameSearch").observe\_field(1, function() {  
$.post(’/rusers/index’, {fullname: $(’#nameSearch’).val()},  
function(data) {  
$("#results").html(data);

Per quale motivo mi viene ritornata la index.html.erb e non la  
index.js.erb?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 6, 2010, 4:39pm UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/2 "2010-09-06T16:39:45Z")

</div>

Probabilmente /rusers/index deve essere /rusers/index.js  
Di default credo si prenda html, una prova la farei

2010/9/6 Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 6, 2010, 4:43pm UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/3 "2010-09-06T16:43:29Z")

</div>

2010/9/6 Andrea R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Probabilmente /rusers/index deve essere /rusers/index.js  
> Di default credo si prenda html, una prova la farei

Sia con index.js, sia con index.js.erb non funziona sebbene i due  
files esistano.  
Ho provato a mettere nel controller:

respond\_with(@rusers) do |format|  
if request.xhr?  
format.js {render :text =\> “js” }  
else  
format.html {render :text =\> “ok”}  
end

per fare delle prove ma sembra che il respond\_to venga ignorato.

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 6, 2010, 11:13pm UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/4 "2010-09-06T23:13:32Z")

</div>

Io mi concentrerei su questa riga:

> $.post(‘/rusers/index’, {fullname: $(‘#nameSearch’).val()},

parte la richiesta ajax?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 7, 2010, 8:47am UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/5 "2010-09-07T08:47:36Z")

</div>

On 6 September 2010 23:13, Marco M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> Io mi concentrerei su questa riga:
> 
> > $.post(‘/rusers/index’, {fullname: $(‘#nameSearch’).val()},
> 
> parte la richiesta ajax?

Si certo.

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [September 7, 2010, 11:38am UTC](https://www.ruby-forum.com/t/rails-perche-ajax-mi-risponde-in-html/194485/6 "2010-09-07T11:38:37Z")

</div>

> respond\_with(@rusers) do |format|  
> if request.xhr?  
> format.js {render :text =\> “js” }  
> else  
> format.html {render :text =\> “ok”}  
> end
> 
> per fare delle prove ma sembra che il respond\_to venga ignorato.

prova con:

respond\_to do |f|  
f.js  
f.html  
end
