类似谷歌的下拉搜索从Asp.Net的数据库中填充
本文关键字:Net Asp 数据库 填充 搜索 谷歌 | 更新日期: 2023-09-27 17:59:15
我正在寻找一种简单但有效的方法来创建一个下拉搜索框,该搜索框应该像谷歌搜索一样工作,并由数据库中的值填充,当我在文本框中键入任何内容时,该数据库会起作用。I应该可以选择任何值。我正在寻找最简单的解决方案,不想像我看到的每个例子那样使用web服务或ajax控制工具包。如有任何帮助,我们将不胜感激。。
您正在寻找类似JQuery的自动完成功能,可在此处找到:https://jqueryui.com/autocomplete/
如果你不想使用AJAX查询来进行搜索,如果你愿意,你可以在HTML中包含所有数据。不过,我不建议这样做,因为如果你的访客查看你的来源,这些信息也可以公开显示。如果这不是问题,那就一定要走这条路。
如果您确实想通过AJAX加载数据,我链接到的Autocomplete也可以针对远程数据源工作。相关文档如下:https://jqueryui.com/autocomplete/#remote
不使用远程数据源(无ajax)的示例:
$(function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$( "#birds" ).autocomplete({
source: availableTags
});
在这个例子中,您必须想办法将所有标签打印到上面的HTML中,因为您显然无法对其进行硬编码。如何做到这一点,取决于你运行的技术。(MVC,WebForms,…)。但你通常只需要从数据库中获取所有标签,并将它们打印到javascript中。如果你需要一个例子,请发回来告诉我你的技术,我会更新我的答案。
远程数据源示例(使用ajax):
$( "#birds" ).autocomplete({
source: "/api/GetValuesForAutocomplete", //the url to query
minLength: 2 //the amount of letters the user has to type before the search begins
});
//in your HTML you would have:
<input id="birds" />
你可以在他们的网站上找到更完整的例子。您必须使用这样一个ajax查询的URL取决于您的网站是用什么技术编写的。您是否可以访问WEB API项目?还是MVC网站?还是Webforms网站?