2

我正在尝试创建一个动态城市下拉选择器,用户在其中选择一个国家,然后是一个地区,然后是一个城市。现在我在 MySQL 数据库中有两个表,一个包含所有地区,一个包含所有城市,我使用 jQuery 在用户选择国家时首先加载地区,然后在选择地区时加载城市。

我的网站获得了相当多的流量,我担心这非常低效......每次有人进行选择时,都会查询数据库,有时会解析并返回数百行。

我不想查询数据库,因为城市列表永远不会改变,我想将每个国家和地区存储为一个单独的文件,并在需要时加载它们。

例如:IE.html(爱尔兰)

<option value="0" selected>- Select -</option>
<option value="11287">Connaught</option>
<option value="11288">Leinster</option>
<option value="11289">Munster</option>
<option value="11290">Ulster</option>

11290.html(阿尔斯特)

<option value="xxxxxxx">Buncrana</option>
<option value="xxxxxxx">Cavan</option>
<option value="xxxxxxx">Letterkenny</option>
<option value="xxxxxxx">Monaghan</option>

问题是,我不知道如何将这些文件加载​​回选择菜单。有很多关于使用外部文件创建选项的资源,但我找不到任何关于将纯 HTML 加载到表单中的信息。

这甚至可能吗?

谢谢!

4

2 回答 2

3

您可以简单地在 jQuery 中使用load方法。请参见下面的示例。

$( "#dropdowndiv" ).load( "ajax/11290.html" );

您可以将整个存储在select那里,也可以只存储options. 根据您在文件中存储的内容,使用 jQuery 选择器。

笔记

如果您正确实施网站,拥有成千上万的用户不会减慢您的网站速度。搜索词High Availability For Database

于 2013-10-30T06:06:35.467 回答
0

您可以做的是在一个单独的 js 文件中创建一些数组来保存这些值,即:

var myCars=new Array("Saab","Volvo","BMW");

然后通过查看此处在 jquery 中使用 for 循环(或 foreach)动态创建选项:

如何使用 jquery 动态创建选择元素的选项?

我会提供更多代码示例,但由于我在手机上,所以我受到限制。

于 2013-10-30T06:16:33.513 回答