我正在使用Zend Framework开发一个表单并使用dojo。表单的一部分是收集用户的联系方式和地址。我遇到的问题是使用FilteringSelect或ComboBox dojo组件来选择城市/城镇。我的数据库中有40K +城镇/城市名称列表。
我曾尝试使用Dojo组件来获取此列表,但担心40K城镇名称太大了。我不想手动使用标准的html组件,因为我确信页面中的所有额外文本都会使我的表单成为加载的噩梦。
所以我想我的问题分为两部分:
提前致谢。
答案 0 :(得分:0)
Youch,这是一个很重要的数据点列表。我说这真的取决于用户的浏览器和设置。和等待的宽容。
如果您能够,我会说将数据放在Web服务后面并使用dojox.data.QueryReadStore。该页面甚至有一个使用服务来使用ComboBox查询状态的示例。
<script>
dojo.require("dojox.data.QueryReadStore");
dojo.require("dijit.form.ComboBox");
</script>
....
<b>Combo lookup of states through QueryReadStore</b><br>
<div dojoType="dojox.data.QueryReadStore" url="/moin_static163/js/dojo/trunk/release/dojo/dojox/data/tests/stores/QueryReadStore.php" jsId="comboStore"></div>
<div dojoType="dijit.form.ComboBox" store="comboStore" searchAttr="name" pageSize="100"></div>
svn中提供了QueryReadStore.php,因此您甚至可以查看他们在服务器端做了什么。