我正在尝试在我的网站上开发一个功能,该功能会自动抓取我的表中可用的路由,并在jQuery自动填充文本框中填充它们,该文本框会在键入时显示结果
我已经设法将查询放在一起,并且它完美地工作......但是没有添加jQuery
自己的代码
<?PHP
mysql_connect('localhost', 'sample', 'sample');
mysql_select_db('winning');
$sql = "SELECT distinct rout_to FROM search_v ORDER BY rout_to ASC" ;
$result = mysql_query($sql);
echo '<div class="ui-widget"><select id="combobox" name="arrival_label">';
while ($row = mysql_fetch_array($result)) echo "<option value='" . $row['rout_to'] . "'>" . $row['rout_to'] . "</option>";
echo "</select></div>"; ?>
当我从jquery ui库测试自动完成组合框时,它自己运行良好,没有php数据
我的问题是,我怎么能让这两个玩得很好?
答案 0 :(得分:0)
<?php
$autocomplete = array();
mysql_connect('localhost', 'sample', 'sample');
mysql_select_db('winning');
$sql = mysql_query('SELECT distinct rout_to FROM search_v ORDER BY rout_to ASC');
$r = $db->query($q);
while ($row = mysql_fetch_array($result))
$autocomplete[] = $row['rout_to'];
}
?>
<script type="text/javascript">
$(function() {
var availableItems = [ <?php print '"'.implode('","', $autocomplete).'"'; ?> ];
$("#combobox").autocomplete({
source: availableItems,
minLength: 3
});
});
</script>
注意:刚写完我的头,可能需要定制。
编辑:在您的HTML中,您需要一个ID为input
的{{1}}元素。
答案 1 :(得分:0)
你可能想尝试使用Jquery UI的自动完成插件。
<?php
$autocomplete = array();
mysql_connect('localhost', 'sample', 'sample');
mysql_select_db('winning');
$sql = mysql_query('SELECT distinct rout_to FROM search_v ORDER BY rout_to ASC');
$r = $db->query($q);
while ($row = mysql_fetch_array($result))
$autocomplete[] = $row['rout_to'];
}
?>
<script>
$(function() {
var availableTags = [
<?php foreach($autocomplete as $a){
echo '"'.$a.'",';
}?>
];
$( "#tags" ).autocomplete({
source: availableTags
});
});
</script>
HTML CODE:
<div class="ui-widget">
<label for="tags">Tags: </label>
<input id="tags">
</div>
我认为在这种情况下,您将不再使用选择标记而是使用输入标记。我希望它有所帮助。
谢谢,戴夫