我希望创建静态.js文件,而不是每次有人在搜索框中键入字符时都访问数据库。
我可以使用哪些技术来创建静态.js文件,这些文件基本上是用来加载jquery自动完成插件的数组。
我的产品sku看起来像:
ABC1234 或
Alpha Beta C 1234(abc是制造商名称的缩写形式,而'Alpha Beta C‘是长格式,后跟3-4个数字)。
发布于 2010-02-11 12:19:38
这是JSON的一个很好的用途。Javascript对象表示法。您可以只包含JS文件,并将所有数据放在对象中。
http://www.json.org
var products = [{sku:'aaaa', price: 50}, {sku:'bbbb', price: 60}];请检查一下我的语法,它是从记忆中来的。
发布于 2010-02-11 13:02:02
您还可以在 2/3击键后通过AJAX仅调用发送JSON中所有剩余的可能性,并从该对象/数组中提取剩余结果(我不知道JQuery是否支持此行为)。这节省了带宽,因为不必将整个数据库发送到客户端,并且不必多次调用数据库(通常情况下,如果第一个键是正确的)。
我不确定您的问题是否也与服务器端相关(也不确定您使用的是什么服务器端技术),所以仅供参考,请查看PHP's JSON functions (特别是json_encode)以了解更多信息。
发布于 2010-02-11 13:31:24
然后可以将这些字符串压缩发送到浏览器,加载时间可能不会很长。
不管怎样,我就是这么做的。
或者可能只是加载整个字典,因为20k并不是很多。我写了一个Javascript游戏,它加载了一个比这个更大的字典,并不是一个真正的问题。
https://stackoverflow.com/questions/2242230
复制相似问题