jQuery UI自动完成源为不同的表单元素合并

时间:2015-07-06 13:01:10

标签: jquery autocomplete jquery-ui-autocomplete

我有一个包含多个文本输入的表单,并尝试使用jQuery UI从不同的源自动完成每个文本。问题是资源合并在一起。请查看我的代码,让我知道我做错了什么。

表格HTML:

<label>State: </label>
<input class='ac_state' name='state' type='text' />

<label>District: </label>
<input class='ac_district' name='district' type='text />

<label>Town: </label>
<input class='ac_town' name='town' type='text' />

每个输入的javascript都在一个页面中,看起来像这样(我这里只包括两个):

<script type='text/javascript'>
  $(function() {
    var availableTagsDistrict = <?php include('../inc/autocomplete_district.php'); ?>;
    $('.ac_district').autocomplete({
      source: availableTagsDistrict,
    });
  });
</script>

<script type='text/javascript'>
  $(function() {
    var availableTagsTown = <?php include('../inc/autocomplete_town.php'); ?>;
    $('.ac_town').autocomplete({
      source: availableTagsTown,
    });
  });
</script>

mysql的结果以json_encode格式返回。区域的一个这样的例子:

require('../../inc/connect.php');

$query = "SELECT DISTINCT district FROM source";

$results = mysqli_query($cxn,$query);

if ($results->num_rows) {
    while ($row = mysqli_fetch_assoc($results)){

    $result[] = trim($row['district']);

    }
}

mysqli_close($cxn);

echo json_encode($result);

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我已经解决了它,结果我的查询继续添加到$ result []数组,然后将其发布到所有javascript中的availableTags中。这样的菜鸟。