jquery - 有条件地在 Ruby on Rails 表单上显示字段

标签 jquery ruby-on-rails

我有一个 Ruby on Rails 应用程序,使用 Bootstrap 进行样式设置。这是表单中的一个片段,我希望在选择前一个字段中的非空白值后使该字段可见。因此,一旦选择非空白“criteria”,我想让“criteria_reason”字段可见。如何修复此代码?

<%= f.select :criteria, ['', 'Yes', 'No', 'Maybe'] %>

<%= f.text_field :criteria_reason, class:"form-control", placeholder:'Reason',
      style:"#{'display:none' if :criteria == ''}" %>

谢谢!

最佳答案

当您单击下拉菜单时,您可以使用 JavaScript 使其可见或不可见。

<script type="text/javascript">
  $(function () {
    $("#category_category_id").change(function () {
        var category = $(this).val();
        if (category != "") {
          $("#category_criteria_reason").show();
        } else {
          $("#category_criteria_reason").hide();
        }
    });

  });
</script>

使用您自己的表单类更改category_。然后,您可以将默认代码更改为

<%= f.text_field :criteria_reason, class:"form-control", placeholder:'Reason',
      style:"#{'display:none' if f.object.criteria == ''}" %>

关于jquery - 有条件地在 Ruby on Rails 表单上显示字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32621839/

相关文章:

jquery css 将输入大纲更改为无

javascript - 如何在 Ajax 成功函数中获取脚本级变量?

mysql - 带有命名空间的模型 - 错误的表名(没有命名空间)

javascript - 我可以使用 Visual Studio 2010 调试 javascript 并让我停下来观察变量吗?

jQuery .position().left 和变量

ruby-on-rails - 测试委托(delegate)给另一个对象的方法

mysql - 在 Rails 中运行种子时收到 NO_AUTO_CREATE_USER 弃用警告

ruby-on-rails - Ruby splat 和 << 运算符

javascript - 如何在不使用 jQuery 重新执行脚本的情况下使用脚本元素移动元素?

javascript - 添加简单的 onclick js 到 Rails