2013-06-18 179 views
0

我有一个选择菜单,其中每个选项的文本都以关键字开始(即 - “Nike Running Shoes”... Nike是关键字)。我想要第二个包含关键字列表的静态选择...然后能够通过所选关键字过滤第二个列表选项。使用jquery过滤选择选项

因此,如果用户选择关键字“Nike”,则第二个列表将被过滤为仅包括以“Nike”开头的测试选项。

这是我创建至今jQuery的...但它不工作

jQuery -> 
subjects = $('#subject_select').html() 
$('#keyword_select').change -> 
    keyword = $('#keyword_select :selected').text() 
    options = $(subjects).filter("option[text^='#{keyword}']").html() 

    if options 
     $('#subject_select').html(options) 
    else 
     $('#subject_select').empty() 

增加生产的“不确定”,“警报选项”。我需要的帮助是:

options = $(subjects).filter("option[text^='#{keyword}']").html() 

当处理两个相关的模型时,这是一件容易的事。在我的情况下,他们没有关联(这就是为什么我使用静态关键字)。

回答

3

编辑 -

这里的工作小提琴:http://jsfiddle.net/WZYzd/

你有一对夫妇的问题,其中最大的是,option元素没有一个text属性,所以我改变了过滤器,像这样:

options = $(subjects).filter(function() { 
    return $(this).text().indexOf(keyword) == 0; 
}); 
+0

与以前相同的结果。我也尝试指定一个特定的现有关键字,不使用变量“关键字”...没有骰子。 – hellion

+0

关键字更改后,主题选择将变为空白。所以,该功能正在工作......它只是不过滤。 – hellion

+0

增加了一个工作小提琴。 –

相关问题