我設計一個web應用程序,並需要一種方法來牽線了MySQL數據庫並將其顯示爲下拉建議,表單中的用戶數據類型。jQuery的表單輸入建議
例如,如果用戶輸入「STAC」應用程序應搜索數據庫,並提供類似的建議:「堆棧」,「計算器」。我正在尋找一些simalar來處理Stack Overflow中的很多標記字段。做這個的最好方式是什麼?
我設計一個web應用程序,並需要一種方法來牽線了MySQL數據庫並將其顯示爲下拉建議,表單中的用戶數據類型。jQuery的表單輸入建議
例如,如果用戶輸入「STAC」應用程序應搜索數據庫,並提供類似的建議:「堆棧」,「計算器」。我正在尋找一些simalar來處理Stack Overflow中的很多標記字段。做這個的最好方式是什麼?
使用PHP,這是很簡單的。
我會用LIKE
關鍵字在SQL找到相關結果。
然後我會分析的結果爲JSON,然後返回給客戶端。
一個簡單的例子:
<?php
$_q = (isset($_POST[ 'q' ]) && !empty($_POST[ 'q' ])) ? $_POST[ 'q' ] : NULL;
if($_q === NULL) {
echo 'invalid querystring';
exit;
}
//connect to the db....
$set = $db->query('SELECT name FROM my_table WHERE name LIKE \'%' . $_q . '%\';');
$json = array();
while($result = $set->fetch_array()) {
$json[] = $result[ 'name' ];
}
echo json_encode($json);
?>
JavaScript的:(使用jQuery)
function getResults(str) {
$.ajax({
url:'suggest.php'.
type:'POST',
data: 'q=' + str,
dataType: 'json',
success: function(json) {
//json is now an array, here's where you render the dropdown data.
}
});
}
$('.suggest').keyup(function() {
getResults($(this).val());
});
退房的jQuery autocomplete plugin。無論是在頁面加載或通過調用Ajax時,將生成使用你的服務器端語言出現在例如字符串列表,
+1非常完整的答案 – Michel 2010-01-25 19:53:30
@Michel,謝謝! – 2010-01-25 19:58:17
@Jacob_Relkin謝謝! – crgwbr 2010-01-25 20:12:46