0

我有一个包含一堆元素的视图。其中一个(div)显示取决于在 select_tag 内(也在同一页面内)发生变化的值。

我从 select_tag 元素中获取选定的 ID

$('#some_id').on('change',function(){
    //$(this).val()
})

但随后只是不知道如何获取对象并检查其属性之一,这样就知道我是否应该显示 div?

我想把那个 id 发送到服务器......在那里做我需要的任何事情,然后回到视图并尝试这样的事情

<% if some_condition %>
 <div>
  ...
 </div>
<% end %>

这(当然)可能不是这样。我很高兴了解这是怎么发生的

4

1 回答 1

0

在从服务器获取一些数据后,您可以这样onChangeselect。您也可以考虑这种方法。

但是,如果您可以预先填充 div 并添加一个类或其他一些属性,您可以将其与选择字段中的所选选项相关联,那么您可以完全阻止服务器调用。

<div class="opt1Val selectOptsDiv"> </div>
<div class="opt2Val selectOptsDiv"> </div>
<div class="opt3Val selectOptsDiv"> </div>

最初用 . 隐藏所有这些 div css display: none;

$('#some_id').on('change',function(){
  var selectedOptionVal = $(this).find("option:selected).val();
  $("." + selectedOptionVal).show();
})

但是我想如果 div 的显示和隐藏仅取决于所选的选项值并且不必在服务器端进行一些其他处理,我想你可以做到这一点。

于 2012-05-20T11:14:08.527 回答