VB.NET版 autoComplete 自动完成功能

   
 <script type="text/javascript" src="../Scripts/jquery-1.4.1.min.js"></script>
    <script src="../Scripts/jquery.autocomplete.js" type="text/javascript"></script>
    <script src="../Scripts/jquery.autocomplete.min.js" type="text/javascript"></script>
    <link href="../Styles/jquery.autocomplete.css" rel="stylesheet" type="text/css" />
    <script src="../Handler/GetPersonJson.ashx" type="text/javascript"></script>



//获取人员信息 搜索自动完成 result 回调函数返回结果
 $("#txtPerson").keydown(function () {
 $("#txtPerson").autocomplete(persondatas);
}).result(function (event, persondatas, formatted)
 { $("#txtPerson").val(persondatas.toString().split(' -- ')[0]);
})


GetPersonJson.ashx code as below:
     
            Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConnectionString_EIS").ConnectionString
            
             

            
            ' EmployeeID
            
            Dim strSQL As String = "  SELECT   (ChineseName + ' -- ' + EmployeeID) as Person  FROM [Employees]  where EmployeeID is not null  ORDER BY [EnglishName]"
  
            
            Dim da As SqlDataAdapter = New SqlDataAdapter(strSQL, connectionString)
            
            da.Fill(ds)
                
 
              
            Dim jsonString As String = CreateJsonParameters(ds.Tables(0))
            
            Dim newJsonStr As String = String.Empty
            
' 定义persondatas 提供前台使用
            newJsonStr = "var persondatas=[" & jsonString & "]"
          
            
            context.Response.Write(newJsonStr)
                
                
        Catch ex As Exception
            Throw ex
        End Try





Public Function CreateJsonParameters(ByVal dt As DataTable) As String

        Dim sb As System.Text.StringBuilder = New System.Text.StringBuilder()


        If dt IsNot Nothing Then
            sb.Append("[")

            For i = 0 To dt.Rows.Count - 1

                sb.Append("{")
                For j = 0 To dt.Columns.Count - 1
                    If j < dt.Columns.Count - 1 Then
                       'Chr(34) 是代表双引号
                        sb.Append(Chr(34) & dt.Columns(j).ColumnName.ToString() & Chr(34) & ":" & Chr(34) & dt.Rows(i)(j).ToString() & Chr(34) & ",")
                    ElseIf (j = dt.Columns.Count - 1) Then

                        sb.Append(Chr(34) & dt.Columns(j).ColumnName.ToString() & Chr(34) & ":" & Chr(34) & dt.Rows(i)(j).ToString() & Chr(34))


                    End If


                Next j

                If i = dt.Rows.Count - 1 Then

                    sb.Append("}")

                Else
                    sb.Append("},")

                End If


            Next i


        End If

        sb.Append("]")
        Return sb.ToString()

    End Function





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值