我有我的网页上选择输入。此选择输入显示/隐藏的表单字段。这一切工作正常。但问题是,如果我提交表单,缺乏一些必要的领域,它并不设置选择正确的价值之后。我只是不能让嵌入式红宝石工作!它使逃逸整个事情...这里我的代码:

$(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();
    }       
  });

});

为什么犯规这项工作??? 我没有得到任何错误或任何东西,它只是将值设置为“<%= @ profile.sex =>” 我在谷歌搜索和搜索有关堆栈溢出,并railscasts,轨道API,应有尽有。林严重混淆...

感谢您的帮助。

有帮助吗?

解决方案

尝试围绕'<%= @profile.sex %>'去除刻度标记。

如果你需要在你的价值刻度线,尽量' + <%= @profile.sex %> + '

其他提示

您JS脚本不执行嵌入红宝石代码。下面是一个说明如何解决此问题:

http://bitprison.net/rails3_dynamic_javascript

您可能想看看 jsvars 。我在我的项目之一使用它,这是非常巨大的。您可以将其分配给哈希设置你的JavaScript变量权控制器:

jsvars[:profile_sex] = @profile.sex

那么你可以做的 $( “#profile_sex”)VAL(profile_sex); 在你的脚本。它可能会解决你的问题,使事情在同一时间更漂亮。

只是一个想法!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top