Subida AJAX utilizando el plugin Prototype.js

Cómo cargar un archivo de imagen usando ajax usando el complemento prototype.js, necesito mostrar esas imágenes después de que se cargue, por favor, ayuda a resolver este problema.

Gracias

También necesitarás algo en el servidor.

Recomiendo usar un clip para almacenar los archivos en su servidor.

Una vez que lo haya configurado, debe hacer que su ajax genere un formulario con un campo de “archivo”. Además, recuerda que el formulario debe ser multiparte.

<% form_for @picture, :html => { :multipart => true } do |f| %> <%= f.file_field :file %> <%= f.submit "Submit" %> <% end %> 

Si solo necesita cargar un archivo, es probable que no necesite un AJAX completo (solo JavaScript sin formato) para mostrar / ocultar el formulario. Me gusta esto:

 <%= link_to_function 'Show/Hide image upload') do |page| page.visual_effect :toggle_blind, 'upload_image' end %>  

Tenga en cuenta que para ocultar / mostrar el div Estoy usando un efecto Scriptaculous, no solo prototipo, el scriptaculous se incluye de forma predeterminada en los Rails de todos modos.

puede usar remote_form_for con un complemento de carga de archivos como attachment_fu o paperclip y luego volver a mostrar la imagen en la vista una vez que se haya cargado. Puede estar utilizando update_page en el controlador.

 https://github.com/JangoSteve/remotipart 

Remotipart es una gem de Ruby on Rails que permite cargar archivos AJAX con jQuery en los formularios remotos Rails 3.0 y Rails 3.1. Esta gem aumenta la funcionalidad de formulario remoto de Rails jQuery nativa que permite la carga asíncrona de archivos con poca o ninguna modificación a su aplicación.

 gem 'remotipart', '~> 1.0' bundle install