[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