如何使用asp.net和json实现jquery-ui自动完成?

时间:2012-04-08 13:31:15

标签: asp.net json jquery-ui jquery-ui-autocomplete

我正在学习asp.net和jquery,现在我正在尝试用PHP实现一个简单的自动完成功能我能够做到这样的事情:

这是客户端代码:

<link type="text/css" rel="stylesheet" href="css/jquery-ui-1.8.17.custom.css"/>
    <script type="text/javascript" src="jquery-1.7.1.js"></script>
    <script type="text/javascript" src="jquery-ui-1.8.5.custom.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function()
        {
            $('.auto').autocomplete(
            {
                source: "search.php", 


                focus: function(event, ui) {
        $(idField).val(ui.item.value);
        $(this).val(ui.item.label);
        return false;
    },

                select: function(event, ui) {
        //$(this).val(ui.item.label);
        $(this).val(ui.item.label);
        var a = "#"+$(this).attr('id');

        $(a+"hidden").val(ui.item.value);
        return false;
    }
                //minLength: 3
            });
        });
    </script>

这是我的搜索代码:

<?php

$host = "localhost"; 
$user = "root"; 
$password = ""; 
$db = "isproj2"; 

// open connection 
$connection = mysql_connect($host, $user, $password) or die ("Unable to connect!"); 

// select database 
mysql_select_db($db) or die ("Unable to select database!"); 
$text = mysql_real_escape_string($_GET['term']);


$query = "Select SupplierName, SupplierID from tbl_supplier where SupplierName LIKE '%$text%'";
$result = mysql_query($query);
$data = array();

$first = true;
while ($row = mysql_fetch_array($result)) {
    $data[] = array('label' => $row['SupplierName'], 'value' => $row['SupplierID']);
}
echo json_encode($data);
?>

我想要发生的事情就是做这样的asp.net,在我读过的一些文章中我需要使用网络服务。

1 个答案:

答案 0 :(得分:0)

jQuery自动完成只需要一个json对象来填充可能的值。它与服务器上的生成方式无关。您确实可以使用正式的webservcie,我猜asp.net有非常简洁的方法来生成这些。我不是专家。

只要从你的asp.net代码返回的响应类似于php代码的响应,自动完成就可以了。