使用autocomplete时无法在javascript中设置变量

使用autocomplete时无法在javascript中设置变量,javascript,jquery,jquery-ui-autocomplete,Javascript,Jquery,Jquery Ui Autocomplete,这是我当前的代码: var areaid; $( "#FindCentre" ).autocomplete({ //Doesn't give the right value here. source: "databasescripts/findcentre.php?AreaID=" + areaid, minLength: 2, select: function( event, ui ) { }, html: true, }); $( "#FindAre

这是我当前的代码:

var areaid;

$( "#FindCentre" ).autocomplete({
    //Doesn't give the right value here.
    source: "databasescripts/findcentre.php?AreaID=" + areaid,
    minLength: 2,
    select: function( event, ui ) {
  },
 html: true,
});

$( "#FindArea" ).autocomplete({
    source: "databasescripts/findarea.php",
    minLength: 2,
    select: function( event, ui ) {
    areaid = ui.item.id;
    alert(areaid);
    //Alerts the correct value here.
  },
 html: true,
});
当用户输入FindArea时,它会提示正确的值,但是当用户随后输入FindCenter时,它将始终返回为未定义。我试着在FindCenter中读取FindArea的ID,但我似乎也做不到


有人有什么建议吗?

当您进行第一次自动完成调用时,它会使用静态值设置自动完成,即areaid=undefined。如果要将自动完成与动态值一起使用,则需要执行以下操作:

source: function(request, response) {
    $.ajax({
       url: "databasescripts/findcentre.php?AreaID=" + areaid //or + $("#FindArea").val()
    });
}

您是否尝试过直接从控件获取值$FindArea.val.@artm是正确的。。。我卷入了这场闹剧,结果迟到了5分钟现在它给出了正确的URL,但是第二个自动完成不想显示任何搜索建议。有什么想法吗?@py我认为这是一个单独的问题,但如果你仍然有他们删除所有不必要的代码从第二自动完成,即选择:函数谢谢,我已经删除了。它仍然不想搜索,但我会摆弄它,看看是否可以修复它: