您可以使用 jquery 执行此操作,使用一个 PHP 后端脚本根据您单击的按钮填充选择框的值。
一些简单的 HTML 开头:
<form action="script.php">
<button id="Honda" onClick="loadModelsForMake('Honda');">Honda</button>
<button id="Toyota" onClick="loadModelsForMake('Toyota');">Toyota</button>
<select name="models" id="models">
<option value="">Please Select A Make</option>
</select>
</form>
然后,您需要设置一个 PHP 脚本,以便在给定所选品牌的情况下为您提供适当的值列表。最好在后端执行此操作,这样您就不会在您的 javascript 代码中对内容进行硬编码。创建一个名为 models.php 的文件。它将查找查询字符串中定义的“make”变量,并返回该 make 的 JSON 模型数组。如果你愿意,你可以把它连接到一个模型数据库,这样你就不用硬编码了:
<?php
$models = array();
if ($_GET['make'] == 'Toyota') {
models[] = array(id: 0, name: 'Matrix'});
models[] = array(id: 1, name: 'Yaris'});
} else if ($_GET['make'] == 'Honda') {
models[] = array(id: 0, name: 'Civic'});
models[] = array(id: 1, name: 'Pilot'});
}
echo json_encode($models);
?>
最后,您需要 JQuery 将它们连接在一起。将此脚本块添加到您的页面:
<script type="text/javascript" charset="utf-8">
function loadModelsForMake(carMake) {
$.getJSON("/models.php", {make: carMake, ajax: 'true'}, function(json){
var options = '';
for (var i = 0; i < json.length; i++) {
options += '<option value="' + json[i].id+ '">' + json[i].name + '</option>';
}
$("models").html(options);
})
}
</script>
当然要确保在页面中包含基本的 jQuery 脚本;)