小编dju*_*uth的帖子

jQuery自动完成和ASP.NET

我在这个网站和网页上搜索了一个使用jQuery和ASP.NET自动完成的简单例子.我想用web服务公开自动完成所使用的数据(接下来可能会这样做).与此同时,我得到了这个工作,但似乎有点hacky ......

在我的页面中,我有一个文本框:

<input id="txtSearch" type="text" />
Run Code Online (Sandbox Code Playgroud)

我正在使用jQuery自动完成,根据他们的示例进行设置:

<link rel="stylesheet" href="js/jquery.autocomplete.css" type="text/css" />
<script type="text/javascript" src="js/jquery.bgiframe.js"></script>
<script type="text/javascript" src="js/jquery.dimensions.pack.js"></script>
<script type="text/javascript" src="js/jquery.autocomplete.js"></script>
Run Code Online (Sandbox Code Playgroud)

这是它开始变得hacky ...我称之为页面而不是web服务:

  <script type="text/javascript">
    $(document).ready(function(){
        $("#txtSearch").autocomplete('autocompletetagdata.aspx');
    });      
  </script>
Run Code Online (Sandbox Code Playgroud)

在页面中我删除了所有的html并且只有这个(否则,各种HTML位显示在自动完成下拉列表中):

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="autocompletetagdata.aspx.cs" Inherits="autocompletetagdata" %>
Run Code Online (Sandbox Code Playgroud)

在我的autocompletetagdata.aspx中,我使用SubSonic从数据库中查询,格式化和返回数据(每行一个数据项):

protected void Page_Load(object sender, EventArgs e)
{
    // Note the query strings passed by jquery autocomplete:
    //QueryString: {q=a&limit=150&timestamp=1227198175320}

    LookupTagCollection tags = Select.AllColumnsFrom<LookupTag>()
        .Top(Request.QueryString["limit"])
        .Where(LookupTag.Columns.TagDescription).Like(Request.QueryString["q"] + "%")
        .OrderAsc(LookupTag.Columns.TagDescription)
        .ExecuteAsCollection<LookupTagCollection>();

    StringBuilder sb = new StringBuilder();

    foreach (LookupTag tag in tags)
    { …
Run Code Online (Sandbox Code Playgroud)

asp.net subsonic jquery autocomplete

50
推荐指数
3
解决办法
9万
查看次数

标签 统计

asp.net ×1

autocomplete ×1

jquery ×1

subsonic ×1