Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## _form.html.erb
- #
- <script type="text/javascript">
- jQuery(function($) {
- // when the #country field changes
- $("#provincia_id").change(function() {
- // make a POST call and replace the content
- var provincia = $('select#provincia_id :selected').val();
- if(provincia == "") provincia="0";
- jQuery.get('/users/update_departamento_select/' + provincia, function(data){
- $("#direccionDepartamentos").html(data);
- })
- return false;
- });
- })
- </script>
- <%= form_for(@user, :remote => true) do |f| %>
- <li><label>Provincia: </label>
- <%= select 'provincia', 'id', @provincias.map {|provincia| [provincia.descripcion, provincia.id]} , { :include_blank => true } %></li>
- <div id="direccionDepartamentos">
- <%= render :partial => 'partials/departamentos' %>
- </div>
- <div id="direccionLocalidades">
- <%= render :partial => 'partials/localidades' %>
- </div>
- </ul>
- <p align="center"><%= f.submit 'Enviar', :class=>"btn" %></p>
- </fieldset>
- <% end %>
- ## users_controller.rb
- #
- def update_departamento_select
- @departamentos = Departamento.where(:provincia_id=>params[:id]).order(:descripcion) unless params[:id].blank?
- render :partial => "partials/departamentos"
- end
- def update_localidad_select
- @localidades = Localidad.where(:departamento_id=>params[:id]).order(:descripcion) unless params[:id].blank?
- render :partial => "partials/localidades"
- end
- ## _departamento.html.erb
- #
- <script type="text/javascript">
- jQuery(function($) {
- $("#departamento_id").change(function() {
- var departamento = $('select#departamento_id :selected').val();
- if(departamento == "") departamento="0";
- jQuery.get('/users/update_localidad_select/' + departamento, function(data){
- $("#direccionLocalidades").html(data);
- })
- return false;
- });
- })
- </script>
- <% if !@departamentos.blank? %>
- <li><label>Departamento: </label>
- <%= select 'departamento', 'id', @departamentos.map {|dep| [dep.descripcion, dep.id] }, { :include_blank => true }, :style => 'width:200px' %></li>
- <% else %>
- <li><label>Departamento: </label>|</li>
- <% end %>
- ## _localidades.html.erb
- #
- <% if !@localidades.blank? %>
- <li><label>Localidad: </label>
- <%= select 'localidad', 'id', @localidades.map {|loc| [loc.descripcion, loc.id] }, { :include_blank => true }, :style => 'width:200px' %></li>
- <% else %>
- <li><label>Localidad: </label>|</li>
- <% end %>
- ## routes.rb
- #
- resources :users do
- resources :asistencias
- end
- match 'users/update_departamento_select/:id', :controller=>'users',
- :action => 'update_departamento_select'
- match 'users/update_localidad_select/:id', :controller=>'users', :action
- => 'update_localidad_select'
Add Comment
Please, Sign In to add comment