我在用于进入城市的asp.net webform页面中有这个文本框。在输入一些文本时,它提供的建议就像facebook对匹配结果一样。
我尝试了这两种方法来实现它。
2.我使用ajax,客户端使用js。但问题是xml包含城市,有州,国家是一个巨大的30MB文件。所以,它是不可能使用它的,所以想到从这个大字母中制作出每个字母表的26个小xml文件,但它们仍然足够大,可以实际使用。所以,现在我打算使用26 * 26个文件,其中包含具有相同前两个字母的城市,但我认为它是无效的方式来做我想要的。
有没有其他有效的方法来完成它? 如果可以的话,最好的方法是使用数据库。
答案 0 :(得分:0)
您需要使用onkeypress和/或onkeyup事件。 您是否知道有免费的即插即用自动完成组件?例如http://jqueryui.com/demos/autocomplete/
使用JSON!它更加紧凑。您可能会节省30-40%的数据大小。 您是否知道您不需要为此传递整个数据集?您可以将其置于服务器上(例如,在数据库中,或者缓存在Web服务器上以便更快地访问和减少数据库流量),并让客户端根据它们键入的字符一次只提取一小组数据。 JQuery UI AutoComplete支持该功能。
如果您不能使用JQuery和JQuery UI(不希望这将是一个不可接受的答案),那么我很确定还有其他免费替代品,包括这个:http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/AutoComplete/AutoComplete.aspx