2013-08-18 3 views
0

У меня есть этот код:Простого JQuery каскадные выбирает

<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. Моя проблема заключается в том, что когда я нахожусь на третьем уровне (континенты -> страны -> города, например), и я меняю континент на какой-то другой или «Не выбран», остальные 2 уровня не будут сброшены. Они должны быть неактивными и перезагружаться, пока вход выбора континента не имеет никакого значения. Как я могу это решить?

+0

я не могу, потому что я получаю ДАННЫЕ из базы данных с PHP – egyeneskanyar

+0

почему это MySQL – skv

+0

../select_model.php и ../select_type.php где Данные берутся, этот скрипт загружает только их – egyeneskanyar

ответ

0

в $("select#category").change() отключить/выпустить #model, а также проверить выбранное значение перед выполнением запроса ajax и включить #type select.