Typeahead:返回包含多个数据的JSON数组

时间:2014-05-22 05:04:01

标签: javascript php jquery twitter-bootstrap typeahead

我正在使用bootstrap的typeahead,我想知道如何为每个结果返回一个包含多个数据的JSON数组。

例如,我希望能够为每个结果返回两个数据,namedescription。怎么会这样做?

2 个答案:

答案 0 :(得分:0)

执行此操作的唯一方法是使用"多个数据集"如以下链接所述: http://twitter.github.io/typeahead.js/examples/#multiple-datasets

您必须创建2个不同的来源:一个用于" name"一个用于"描述"。

如果您不想使用"说明"进行搜索,则可以使用以下代码: http://twitter.github.io/typeahead.js/examples/#custom-templates 您可以使用"名称"进行搜索。并且名称旁会显示说明。

答案 1 :(得分:0)

此代码将使输出在您键入时显示两列的结果。您只需更改search.php代码,而不是任何其他地方。试试并提供反馈。

$key=$_GET['key'];  
$mysqli = new mysqli("localhost", "root", "", "yourbd");
/* check connection */
  if ($mysqli->connect_errno) {
      printf("Connect failed: %s\n", $mysqli->connect_error);
      exit();
  }
$mysqli->set_charset("utf8");
$result = $mysqli->query("select * from yourtb where yourcolumn LIKE '%{$key}%'");

 if (!$result) {
die(mysqli_error($mysqli));
}

        $rows = array();
        while($r = mysqli_fetch_array($result)) {

             $rows[] = $r['col1']. ' - ' . $r['col2'];
        }
        echo json_encode($rows);