使用json与ASP.net进行JQuery Live Search

时间:2013-01-25 11:25:29

标签: c# jquery asp.net json

我有一个asp.net应用程序。要求提供实时搜索功能来搜索特定的产品列表。

我搜索了各种实时搜索jquery插件并使用了它 http://nakajima.github.com/jquery-livesearch/

在上面提到的链接中,数据采用ul li格式,然后实时搜索在该列表上实现,所以我所做的是在后端,从服务器端,使用转发器控件,如下所示

 <ul id="names">
<asp:Repeater ID="SomeRepeater" runat="server" OnItemCommand="SomeRepeater_ItemCommand"      Visible="false">
    <ItemTemplate>

        <li>
            <asp:LinkButton ID="SomeLink" runat="server" CommandName="Load" CommandArgument='<%# Eval("SomeId")%>' Text='<%# Eval("SomeNameName") + " " + "("+ Eval("SomeCount") + ")" %>'></asp:LinkButton>
        </li>

    </ItemTemplate>
</asp:Repeater>

在后面的代码中,使用List对象为转发器控件绑定数据。 毕竟,实时搜索功能完全正常,转发器控制中的值为ul li。

现在,需求已更改,我需要隐藏我绑定到转发器控件的ul li值,但希望实时搜索相同的列表对象。

为此,我搜索了互联网并得到了一个想法,而不是使用转发器控件,让我使用JSon,我成功地从下面的代码中获取值作为字符串

        JavaScriptSerializer jss = new JavaScriptSerializer();
        string output = jss.Serialize(newListObject);

但问题是,我不能使用上面提到的jquery插件,我不知道如何使用上面的json字符串执行相同的搜索功能。

如果我的方法也正确,请告诉我,如何实现同样的目标。

1 个答案:

答案 0 :(得分:1)

听起来jQuery Autocomplete会完全符合你的需要。与.NET集成也相当容易,只返回一个字符串列表。

或者,您可以声明自动完成项的静态列表。您还可以trigger changes/redirect when an item is clicked