私はこのコードを持っています:
<script type="text/javascript">
$(document).ready(function(){
$("select#type").attr("disabled","disabled");
$("select#model").attr("disabled","disabled");
$("select#category").change(function(){
$("select#type").attr("disabled","disabled");
$("select#type").html("<option>Please wait...</option>");
var id = $("select#category option:selected").attr('value');
$.post("../select_type.php", {id:id}, function(data){
$("select#type").removeAttr("disabled");
$("select#type").html(data);
});
});
$("select#type").change(function(){
$("select#model").attr("disabled","disabled");
$("select#model").html("<option>Please wait...</option>");
var id2 = $("select#type option:selected").attr('value');
$.post("../select_model.php", {id2:id2}, function(data){
$("select#model").removeAttr("disabled");
$("select#model").html(data);
});
});
$("form#select_form").submit(function(){
var cat = $("select#category option:selected").attr('value');
var type = $("select#type option:selected").attr('value');
var model = $("select#model option:selected").attr('value');
if(cat>0 && type>0 && model >0)
{
var model = $("select#model option:selected").html();
var type = $("select#type option:selected").html();
$("#result").html('<br>Your choice: ' + type + ' ' + model + '.');
}
else
{
$("#result").html("<br>You have to fill every field!");
}
return false;
});
});
これは 3 レベルのカスケード ドロップダウン メニュー システムで、PHP を使用してデータベースからデータを取得します。私の問題は、第 3 レベル (大陸 -> 国 -> 都市など) に到達するたびに、大陸を別の大陸または「選択されていない」に変更したときに、他の 2 つのレベルがリセットされないことです。大陸選択入力に値が選択されていない間は、非アクティブにしてリセットする必要があります。どうすればこれを解決できますか?