Javascript 筛选集合\u按coffeescript中的值选择
我有一个咖啡剧本:Javascript 筛选集合\u按coffeescript中的值选择,javascript,ruby-on-rails,Javascript,Ruby On Rails,我有一个咖啡剧本: jQuery -> $('#cmbPab').change -> ubis = $('#cmbUbi').html() pabellon = $(this).val() options = $('#cmbUbi').filter("FilterByValue") 我想让它按值过滤选项,我已经看过railcats的东西,但他用不同的方式过滤,我需要按值过滤,因为值是我的id 以下是两个集合的cod,其中cmbPab
jQuery ->
$('#cmbPab').change ->
ubis = $('#cmbUbi').html()
pabellon = $(this).val()
options = $('#cmbUbi').filter("FilterByValue")
我想让它按值过滤选项,我已经看过railcats的东西,但他用不同的方式过滤,我需要按值过滤,因为值是我的id
以下是两个集合的cod,其中cmbPab是我的主要组合:
<div class="form-group">
<%= f.label :Pabellon %>
<%= f.collection_select :idubicacion, Mtopabellon.all,
:codpabellon, :nombre, {prompt: 'Seleccione un pabellón'},
:class=>'form-control', :id => 'cmbPab'%>
</div>
<div class="form-group">
<%= f.label :Ubicacion %>
<%= f.collection_select :idubicacion, CrUbicacion.all, :id,
:nombre, {prompt: 'Seleccione una ubicación'}, :class=>'form-
control', :id => 'cmbUbi' %>
</div>
'表单控件',:id=>'cmbPab'>
“形式-
控件“,:id=>”cmbUbi“%”
我相信您的目标是:
$('#cmbPab').change ->
displayFilterFn = (i, el) -> $(el).val() == 'something?' // do your filtering
$ubis = $('#cmbUbi')
$ubis.children().hide()
$ubis.children().filter(displayFilterFn).show()
如果不知道过滤选项的具体方式,除了基于值之外,我无法为您提供过滤函数实现(displayFilterFn
)。基本思想是首先隐藏所有选项,然后显示与过滤器匹配的选项
有关
.filter()
的更多信息,请参阅。以下是答案!我认为这是最好的方法,也许不容易,但它的工作
您应该在问题中添加相关的HTML。id为cmbUbi的元素是什么?它包含什么?此外,当您说filter时,您的意思是希望隐藏某些元素还是仅从元素的子集中检索某些属性?CMBAB和cmbUbi都是集合\u select,cmbUbi必须根据在CMBAB集合\u select上选择的项目更改其拥有的集合,所以我只想检索一些元素,用新的内容填充组合谢谢,最后我用ajax对一个控制器方法完成了,我留下解决方案的答案,无论如何,非常感谢!