我的任务是为 WordPress 页面创建一个动态的排序列表。我将有一个国家列表,然后当一个国家被选中时,下一个列表将填充该国家的州,然后是下一个菜单,其中包含该州的城市。
我一直无法找到一个明确的解决方案,已经进行了广泛的搜索。
有谁知道如何实现这个,或者我可以在插件的哪里找到它?
太麻烦了……
这里……
function datak()
{
$url = 'http://api.sba.gov/geodata/city_links_for_state_of/tx.json';
$crl = curl_init($url);
curl_setopt($crl, CURLOPT_HEADER, 0);
curl_setopt($crl, CURLOPT_RETURNTRANSFER, 1);
$rtn = curl_exec($crl);
$srn = json_decode($rtn);
$nmb=0;
echo "<select name='state' id='state'><option value='-1'>Choose a state</option>";
while( $nmb < count($srn) ) {
echo '<option value="' . $srn[$nmb]->name . '">' . $srn[$nmb]->name . ' - ' . $srn[$nmb]->primary_longitude . ' - ' . $srn[$nmb]->primary_latitude . "</option>" ;
$nmb++;
}
echo "</select>";
curl_close($crl);
}
它需要一些清理和排序——有 dup 条目。更改 url 中的状态前缀,如果您愿意,可以将文件类型设置为 xml,但您必须重新编码该过程。
让其他人做数据保存。只需给用户内容。
在这里得到它。
希望这可以帮助。主义
我不知道有什么插件可以满足您的需求,但如果我要亲自从头开始构建它,我会首先查看此信息,以使用每个城市的所有信息填充数据库。
信息将像这样组织:
---------------------------------------------------------------------------------
| Country | State | Province | City | Latitude | Longitude |
---------------------------------------------------------------------------------
每个城市在数据库中都有自己的行。纬度和经度是可选的,但建议使用。
之后,就可以使用AJAX 动态填充下拉列表了。基本上,您可以使用 jQuery(推荐用于此任务,因为我们不想重新发明轮子)将 GET 或 POST 请求传递给单独的 PHP 脚本。该文件将运行 SQL 查询(请务必避免使用 mysql_* 函数,因为它们已被弃用。查看PDO以获得更好的替代方案)并根据数据库检查传递给它的值。
我建议使用一些基本信息填充您的数据库。也许与几个州和城市一起设置它,然后查看我给你的资源,以获得一个可行的概念证明。
如果您遇到任何绊脚石,请随时提出另一个问题,以便我们为您提供帮助。
祝你好运。
我找到了一种简单的方法来显示世界的国家-州-城市列表。只需将以下 HTML 和 javascript 添加到您的模板
<select name="country" class="countries" id="countryId">
<option value="">Select Country</option>
</select>
<select name="state" class="states" id="stateId">
<option value="">Select State</option>
</select>
<select name="city" class="cities" id="cityId">
<option value="">Select City</option>
</select>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://lab.iamrohit.in/js/location.js"></script>
https://github.com/hiiamrohit/Countries-States-Cities-database