自动完成不允许空格

时间:2013-05-21 06:30:58

标签: jquery autocomplete

我在我的网站中使用自动填充功能:

$(document).ready(function(){           
$('input[type="text"]').each(function(){
    var $this = $(this);
        $this.autocomplete({              
            minLength: 1,                                               
        source: "{site_url}publish/my_autocomplete?key=" + $this.attr('id')
        })
    });     
})

它运行正常,但是当有一个单词'harley motor'时,如果我输入了'ey',那么它就没有显示出来。关于如何通过只输入带有尾随空格的harley motor来选择ey的任何建议?

3 个答案:

答案 0 :(得分:2)

网址需要转义,因为您不仅会遇到问题:

Blank spaces in ajax request with jquery

您需要逃避

source: escape("{site_url}publish/my_autocomplete?key=" + $this.attr('id'))

答案 1 :(得分:1)

我不确定只看你的代码。但似乎你可能在发布空间时遇到问题。在发布到服务器之前,请尝试使用encodeURIComponent对空格进行编码。

答案 2 :(得分:0)

我建议你找出问题所在,服务器端或客户端..

如果服务器端的Request.Params["term"]值包含用户输入的空间数据,那么您需要考虑服务器端逻辑错误的位置。

否则,它可能是客户端的问题,在某处输入的文本会删除空格。

注意: Request.Params我在这里使用的是ASP.Net特有的,我不确定您使用的服务器端技术。但是每种语言都可能有相同的代码来检查请求值