[Ror-es] Perdido con Ajax (Copiar valor de un select a un campo de texto)

Pedro Marín pmarinr at gmail.com
Mon Aug 7 15:35:33 GMT 2006


Le he dado una vuelta de tuerca mas y jugueteando me he creado un helper.

A ver si podéis echarle un vistazo y comentarme si esta bien o si se puede
optimizar algo.

#----------  HELPER PARA CREAR UN CAMPO DE TEXTO Y UN SELECT ASOCIADO A EL
----------
# Le pasamos el nombre de la tabla y del campo que queremos listar.
#También le pasamos el objeto que usa Rails para gestionar esa tabla


def text_select_field(tabla,campo,objeto)
#Creamos una lista de los distintos datos de la tabla (P.E. cargos que
ocupan los empleados )
listado = objeto.find_by_sql("SELECT DISTINCT #{campo.to_s} FROM #{
tabla.to_s}s ORDER BY #{campo.to_s}").collect {|p| [  p[campo], p[campo] ] }

result = text_field tabla,campo

result +="<select id='selector_#{campo.to_s}' name='selector_#{campo.to_s}'
onchange='$(#{tabla.to_s}_#{campo.to_s}).value = $(selector_#{campo.to_s
}).value'>"

for item in listado
   result +="<option value='"+item[0]+"'>"+item[1]+"</option>\n"
end

result +="</select>"

end

#------------------------------------------------------------------------------------------------

Lo he metido en el archivo application_helper.rb

Ahora solo tengo que llamarlo de esta forma:

<%=text_select_field 'proyecto', 'tipo',Proyecto %>

Espero que os sea de utilidad .
Saludos.


-- 
Pedro Marín
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20060807/02ee73a9/attachment.htm 


More information about the Ror-es mailing list