使用ajax请求变量填充下拉列表

时间:2016-09-22 17:02:07

标签: javascript jquery ajax

我在javascript中的限制阻止我解决我目前面临的问题。 我正在做一个检索一些数据库值的ajax请求。 我收到了我需要的数据,但是 我无法使用该值“cityareax”填充现有下拉列表或创建新下拉列表。

以下是代码:

<script type="text/javascript">
function autocomp_city() {
    var min_length = 2; // min caracters to display the autocomplete
    var keyword = $("#city_namex").val();
    if (keyword.length >= min_length) {
        $.ajax({
          url: "city_ajax_refresh.php",
          type: "POST",
          data: {keyword:keyword},
          success:function(data){
            $("#city_list").show();
            $("#city_list").html(data);
          }
        });
    } else {
        $("#city_list").hide();
    }
}

// set_item : this function will be executed when we select an item - a city name
function set_item(cityname, statename, cityarea) {
    $("#city_namex").val(cityname);
    $("#statex").val(statename);
    // hide proposition list
    $("#city_list").hide();

    $("#cityareax").val(cityarea); 
}
</script> 

有人能帮助我吗? tx Roberto

2 个答案:

答案 0 :(得分:1)

感谢您的关注。我找到了自己的解决方案。主要问题是时间安排。

我正在尝试使用从Ajax收到的数据,该脚本处于非活动状态,已执行onload。

当我在AJAX REQUEST之后的函数中移动我的变量处理代码时,一切都很顺利。大概一个星期我跑来跑去试图寻找解决方案......

罗伯特

答案 1 :(得分:0)

你错过了返回类型吗?

$.ajax({
  url: "city_ajax_refresh.php",
  type: "POST",
  data: {keyword:keyword},
  datatype: "html",
  success:function(data){
    $("#city_list").show();
    $("#city_list").html(data);
  }
});

什么是php输出?

需要在PHP中使用echo而不是return。

<?php 
  $output = some_function();
  echo $output;
?>