【发布时间】:2014-08-30 12:46:39
【问题描述】:
我有什么
使用 typeahead.js 显示值数组的文本输入字段。这些来自查询 MySql 表的 php 脚本。
HTML/JS:
<div class="FORM col-sm-3">
<div class="input-group">
<input type="text" data-provide="typeahead" class="form-control" id="formsearch" name="formsearch" autocomplete="off" placeholder="FORM">
</div>
<script>
$.get('searchers/forms.php', function(data){
$("#formsearch").typeahead({ source:data });
},'json');
</script>
</div>
搜索者/forms.php:
<?php
include('../config/DBconnect.php');
$result = $con->query("SELECT id,name FROM forms LIMIT 0,10");
while ($row = $result->fetch_object()){
$user_arr[] = $row->id;
$user_arr2[] = $row->name;
}
$result->close();
echo json_encode($user_arr2);
?>
上述方法有效,因为它为我提供了 MySql 表中的选项下拉菜单。
我正在努力实现的目标
我希望结果是 URL,在选择时重定向。
URL 将始终具有与数组中的值相关的模式。因此,如果一个列表是“hello”,则 URL 将是“hello.php”
我对如何做到这一点有一些模糊的想法。
- 在 mysql 表中有一个 URL 列,尽管这可能会在数百个条目中重复
- 获取 PHP 脚本以获取“名称”值,将其转换为相关 URL,然后将其输出到数组中。然后,Typeahead 必须区分两者
- 在 Javascript 中执行类似的功能
我是游戏新手,在这里盲目飞行,所以我愿意接受其他关于如何解决这个问题的建议。我也不确定我需要搜索什么,所以如果有人在我之前这样做过,我深表歉意。
感谢您的帮助
【问题讨论】:
标签: typeahead.js