首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将jQuery动态搜索下拉菜单与多个选择功能集成在一起时出现问题

将jQuery动态搜索下拉菜单与多个选择功能集成在一起时出现问题
EN

Stack Overflow用户
提问于 2014-04-29 05:52:01
回答 1查看 124关注 0票数 0

我集成了一个搜索功能,将动态填充数据库中的内容下拉菜单。尽管如此,当下拉菜单中的一个选项被点击时,我希望搜索功能“重置”它自己,这样就可以选择另一个选项,从而在输入框中有两个或更多可能的选择。例如,以下是所需的输出:

目前,下面的代码只允许动态下拉列表生成一次:

代码语言:javascript
复制
jQuery(".search").keyup(function() {
        var searchbox = jQuery(this).val();
        var dataString = 'searchword='+ searchbox;

        if(searchbox==''){
            jQuery("#display").hide();
        } else {

            jQuery.ajax({
                type: "POST",
                url: "/inbox/user-search/",
                data: dataString,
                cache: false,
                success: function(html)
                {   jQuery("#display").html(html).show();

                    jQuery("li").click(function(){ 

                        jQuery("#send-message-to-user").val(jQuery.trim(jQuery(this).text())+"; ");

                        jQuery("#display").hide();
                    })

                }
            });
        } return false;    

    });

很明显我遗漏了一些东西...任何帮助都将不胜感激。干杯

EN

回答 1

Stack Overflow用户

发布于 2014-04-29 06:00:48

当HTML不在这里的时候就有点困难了。这让你上路了吗?:

代码语言:javascript
复制
function getTextBehindLastSemicolon(string) {
    if (string.match(/\;\ (.*)$/)[0]){
        return string.match(/\;\ (.*)$/)[0];
    }
    else{
        // If no semicolons
        return string;
    }

}

var isLoading=false;
function autocomplete(searchWord) {
    if (isLoading){
        return;
    }
    isLoading=true;

    var dataString = 'searchword=' + searchWord;

    if (searchWord == '') {
        jQuery("#display").hide();
    } else {
        jQuery.ajax({
            type: "POST",
            url: "/inbox/user-search/",
            data: dataString,
            cache: false,
            success: function(html) {
                jQuery("#display").html(html).show();

                jQuery("li").click(function() {
                    jQuery("#send-message-to-user").val(jQuery.trim(jQuery(this).text()) + "; ");
                    jQuery("#display").hide();
                });
                isLoading=false;

            }
        });
    }
    return false;
}

jQuery(".search").keyup(function() {
    autocomplete(getTextBehindLastSemicolon(jQuery(this).val()));
    return false;
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23351791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档