2010-01-25 38 views
0

我設計一個web應用程序,並需要一種方法來牽線了MySQL數據庫並將其顯示爲下拉建議,表單中的用戶數據類型。jQuery的表單輸入建議

例如,如果用戶輸入「STAC」應用程序應搜索數據庫,並提供類似的建議:「堆棧」,「計算器」。我正在尋找一些simalar來處理Stack Overflow中的很多標記字段。做這個的最好方式是什麼?

回答

5

使用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()); 
}); 
+1

+1非常完整的答案 – Michel 2010-01-25 19:53:30

+0

@Michel,謝謝! – 2010-01-25 19:58:17

+0

@Jacob_Relkin謝謝! – crgwbr 2010-01-25 20:12:46