javascript - 带下拉按钮的 Bootstrap 提前输入

标签 javascript jquery twitter-bootstrap bootstrap-typeahead

我希望输入建议菜单根据所选菜单显示不同的结果,如下结构:

var colors = ["red", "blue", "green", "yellow", "brown", "black"];
var numbers = ["One", "Two", "Three", "Four", "Five", "Six"];
var names = ["Ahmad", "Ali", "Hatem", "Wesam", "Nour", "Jeorge"];

$( "#search1" ).attr("autocomplete", "off");
$( "#search-fld" ).typeahead({source: colors});

$("#search-drop li a").click(function(){
    $("#search-btn").text($(this).text()); 
    if($(this).text() == 'People') {
        $( "#search-fld" ).typeahead({source: names});
    } else if($(this).text() == 'Salaries') { 
        $( "#search-fld" ).typeahead({source: numbers});
    } else if($(this).text() == 'Jobs') { 
        $( "#search-fld" ).typeahead({source: colors});
    }
});

这里是 jsfiddle 的示例。 但问题是,即使我选择不同的子菜单,相同的结果仍然出现。

我想知道如何从不同的资源加载不同的预输入结果。

请多多指教,

=================================

Dynamic typeahead error

=================================

New Error

最佳答案

这应该有效:

$("#search-drop li a").click(function(){
        $("#search-btn").text($(this).text()); 
        if($(this).text() == 'People') {
            $( "#search-fld" ).data('typeahead').source = names;
        } else if($(this).text() == 'Salaries') { 
            $( "#search-fld" ).data('typeahead').source = numbers;
        } else if($(this).text() == 'Jobs') { 
            $( "#search-fld" ).data('typeahead').source = colors;
        }
});

关于javascript - 带下拉按钮的 Bootstrap 提前输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15798055/

相关文章:

javascript - 用类 'ul:first-child' 替换选择器 '.list_wrapper:first-child'

jquery - 如何将标签添加到我的表单?

twitter-bootstrap - React-Bootstrap 中心文本

javascript - 除了enableHighAccuracy之外,还有什么方法可以提高getCurrentPosition()坐标的准确性?

javascript - createSVGPoint 不是函数?

javascript - 使用 jQuery 将每个 * 包装在页面上

css - Bootstrap ProgressBar 增加列高

javascript - 使用 Javascript 在表中设置复选框

javascript - @ 之前正好 10 个数字的电子邮件地址的正则表达式验证器

javascript - 使用 Javascript 访问动态创建的链接