Pregunta

Tengo una selección de entrada en mi página. esta selección de entrada Muestra / oculta los campos del formulario. Todo esto funciona bien. Pero el problema es que si presento la forma y carecen de algunos campos necesarios, doesnt ajuste la Selección al valor justo después. Yo sólo puedo conseguir el rubí incrustado al trabajo! que mantiene escapar todo el asunto ... aquí mi código:

$(document).ready(function() {
$("#profile_sex").val('<%= @profile.sex %>')
   $("#profile_sex").change(function(){



    ($(this).val() == "Frau") ? $('#form-female').show() : $('#form-female').hide();
    ($(this).val() == "Mann") ? $('#form-male').show() : $('#form-male').hide();
    if ($(this).val() == "Paar") {
        $('#form-female').show(); 
        $('#form-male').show();
    }       
  });

});

¿Por qué doesnt este trabajo ??? No consigo cualquier error o cualquier cosa que sólo establece el valor a "<% = @ profile.sex =>" Estaba buscando en Google y búsqueda sobre el desbordamiento de pila y Railscasts, la API de rieles, todo. Im seriamente confundido ...

gracias por su ayuda.

¿Fue útil?

Solución

Trate de eliminar las marcas de graduación en torno '<%= @profile.sex %>'.

Si necesita las marcas de graduación alrededor de su valor, intente ' + <%= @profile.sex %> + '

Otros consejos

Su script JS no ejecuta código de rubí incrustado. He aquí una descripción de cómo resolver esto:

http://bitprison.net/rails3_dynamic_javascript

Es posible que desee echar un vistazo a jsvars . Lo estoy usando en uno de mis proyectos y es bastante grande. Se pueden configurar las variables JavaScript justo en el controlador mediante la asignación de un hash:

jsvars[:profile_sex] = @profile.sex

entonces usted podría hacer $ ( "# profile_sex") val (profile_sex);. en su script. Se podría resolver su problema y hacer las cosas más bonita al mismo tiempo.

Es sólo una idea!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top