Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

223
Vistas
¿Cómo renderizo parcial a través de ajax en rails3 y jQuery?

Podría hacer algo como esto en Rails 2:

 def show_rec_horses rec_horses = Horses.find(:all) page["allHorses"].replace_html :partial => "horses/recommended", :locals => {:rec_horses => rec_horses} end

¿Cómo hago esto en Rails3 con jQuery? Entonces, ¿cómo puedo reemplazar html de mi div con una llamada parcial a través de ajax (link_to:remote => true) en Rails3.

Probé algo como (en mi show_rec_horses.js.erb):

 $("#interactionContainer").update("<%= escape_javascript(render("horses/recommended"))%>");

Y no pasa nada. Probé algunas otras variaciones pero ninguna funcionó. ¿Qué estoy haciendo mal? ¿Debería abordarse esto de alguna otra manera? Cualquier respuesta sería muy apreciada.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Bien, comencemos con el controlador.

 def show_rec_horses @rec_horses = Horses.find(:all) respond_to do |format| format.html # show_rec_horses.html.erb format.js # show_rec_horses.js.erb end end

Esto asegurará que se representen las plantillas correctas para una solicitud html o una solicitud javascript. Si solo necesita responder a una solicitud de javascript, elimine la parte html.

Ahora supongamos que tiene una página que contiene lo siguiente:

 <p><%= link_to 'Show Horses', show_rec_horses_path, remote: true %></p> <div id="interactionContainer"></div>

Al hacer clic en el enlace, se realizará una solicitud a la acción show_rec_horses en su controlador, esta acción generará el archivo javascript show_rec_horses.js.erb .

Este archivo javascript debe contener algo como esto:

 $('#interactionContainer').html('<%=j render partial: 'horses/reccommended', locals: { rec_horses: @rec_horses } %>')

Ahora su contenedor se llenará con el contenido de horses/_reccommended.html.erb , que por ejemplo podría contener:

 <% rec_horses.all.each do |rec_horse| %> <p><%= rec_horse.name %></p> <% end %>
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda