Javascript 我怎样才能使我的文本框自动完成,工作

Javascript 我怎样才能使我的文本框自动完成,工作,javascript,jquery,asp.net,ajax,Javascript,Jquery,Asp.net,Ajax,我正在尝试对我的文本框进行自动完成,但它不起作用。遵循我的代码 $(function () { var credenciada = '<%= credenciadaId %>'; xml_NomeCompleto = ""; var Nomes = ""; var retorno = ''; var count = 0; var t = ''; $.ajax({ url: "../Xml/Acesso

我正在尝试对我的文本框进行自动完成,但它不起作用。遵循我的代码

    $(function () {

    var credenciada = '<%= credenciadaId %>';

    xml_NomeCompleto = "";
    var Nomes = "";
    var retorno = '';
    var count = 0;
    var t = '';
    $.ajax({
        url: "../Xml/AcessoExterno.aspx?Credenciada=" + credenciada,
        type: "get",
        dataType: 'xml',
        async: false,
        success: function (data) {

            $(data).find("REGISTRO").each(function () {
                t = $(this).find("NOMECOMPLETOUSUARIO").text();
                Nomes += ["\"" + t + "\","];
            });
        }
    });
    $("#ctl00_contentConteudo_txtNome").autocomplete({ source: Nomes });
});
$(函数(){
变量credenciada=“”;
xml_-to=“”;
var Nomes=“”;
var='';
var计数=0;
var t='';
$.ajax({
url:“../Xml/AcessoExterno.aspx?Credenciada=“+Credenciada,
键入:“获取”,
数据类型:“xml”,
async:false,
成功:功能(数据){
$(数据)。查找(“注册表”)。每个(函数(){
t=$(this.find(“NOMECOMPLETOUSUARIO”).text();
Nomes+=[“\”+t+“\”,“];
});
}
});
$(“#ctl00_contentConteudo_txtNome”).autocomplete({source:Nomes});
});

通常情况下,变量“t”接收我的所有用户名,但自动完成不起作用。

等待
ajax
响应完成,然后初始化
autocomplete
,因为在初始化插件之前,数据不可用。另外,您创建Nomes(source)的方式是错误的。将其声明为数组,并使用
push
方法填充它

试试这个

   var Nomes = [];
   $.ajax({
        url: "../Xml/AcessoExterno.aspx?Credenciada=" + credenciada,
        type: "get",
        dataType: 'xml',
        async: false,
        success: function (data) {
            $(data).find("REGISTRO").each(function () {
                Nomes.push($(this).find("NOMECOMPLETOUSUARIO").text());
            });
            $("#ctl00_contentConteudo_txtNome").autocomplete({ source: Nomes });
        }
    });

你通过Javascript调试器运行过这个吗?是的,我把“调试器;”一切都很好,但是我的文本框中没有自动完成。我这样写,但是我看不到结果,因为太慢了…只是加载。。。