我的网站上有产品列表页面和产品详情页面。
在asp主页面中,我放置了一个文本框来搜索数据库中的产品。
我需要做的是:当访问者开始在文本框中书写时,文本框会从数据库中的产品名称中重新填充。
当访问者按下拉列表中的结果输入时,该站点将他带到产品详细信息页面,该页面由主页中查询字符串传递的ID提交的产品详细信息填充。
请帮助我,我搜索了很多,并且有非常类似的问题对我的情况不起作用。
任何指向教程或其他问题的链接都是完美的。
非常感谢
答案 0 :(得分:1)
答案 1 :(得分:1)
我会查看jQuery autocomplete。
您可以像这样使用它:
$('#<%= yourTextBox.ClientID %>').autocomplete({
source: 'HandlerThatReturnsProductNames.ashx',
select: function (event, ui) {
// this is where you would jump to your product page
}
});
然后你需要创建通用处理程序“HandlerThatReturnsProductNames.ashx”。在ProcessRequest
方法中,它需要执行以下操作:
public void ProcessRequest(HttpContext context) {
string term = context.Request.QueryString.Get("term");
List<QuickProduct> listOfProducts = SomeMethodThatGetsMatchingProducts(term);
var jsSerializer = new System.Web.Script.Serialization.JavaScriptSerializer();
string json = jsSerializer.Serialize(listOfProducts);
context.Response.ContentType = "application/json";
context.Response.Write(json);
context.Response.End();
}
假设您的QuickProduct
是这样的:
public class QuickProduct {
public int value { get; set; }
public string label { get; set; }
}