2016-03-31 7 views
0

Ich habe 4 Dropdowns. Zeitschriften, DD1, DD2, DD3. Die Dropdown-Listen DD1, DD2, DD3 müssen dynamisch mit der Auswahl eines Werts im Drop-down-Menü Magazin gefüllt werden. Die Dropdownlisten DD1, DD2, DD3 sind nicht voneinander abhängig. Sie hängen ausschließlich vom Wert in Magazinkalender ab.Dynamisch 3 Dropdown-Listen basierend auf der Auswahl im ersten Dropdown-Menü

Bei der Auswahl von Dropdown 1 Wert, muss PHP Ajax auf mysql aufrufen. Ich muss 3 verschiedene mysql Queries im Hintergrund für 3 dropdowns implementieren. Ich surfte im Netz und alle dropdowns beziehen sich auf die vorherigen dropdowns. Für Example. Kann mir jemand mit richtigen Link oder die richtige Idee, dies zu tun.

enter image description here

+0

@MatthewCliatt - Ich sage, wie Sie vorgehen, und Sie fragen nach Code. – Sam

Antwort

1

Eine schnelle Abhilfe JavaScript verwendet Onchange:

Form:

<select name="dd1" id="dd1" class="form-control" onChange="getDD2(this.value);"> 
     <option value="" selected="selected">-select-</option> 
</select> 

JavaScript:

function getDD2(id){ 
      if(id==""){ 
       alert("Please select any dd1!");    
      }else{ 
      var url = 'getdd2.php?id='+id; 
       $('#dd2container').load(url); 
      } 
     } 

und in getdd2.php

$id = $_REQUEST['id']; 
$dd= "SELECT * FROM prefix_dd2 WHERE id='$id'"; 
$founddd1 = $dbh->query($dd); 
$res = $founddd1->fetchAll(); 
if(count($res)<=0){ 
    echo '<select name="dd2" class="form-control" id="dd2">'; 
      echo '<option value="select">No dd</option>';   
    echo "</select>"; 
}else{ 
    echo '<select name="dd2" class="form-control" id="dd2" onchange="getDD3($id)">'; 
    echo '<option value="select" selected="selected">-select-</option>'; 
     foreach($res as $dd2): 
      echo '<option value="'.$dd2['id'].'">'.$dd2['dd2_name'].'</option>'; 
     endforeach; 
    echo "</select>"; 
} 

DD2 in Ihrem Formular wählen würde:

<div id="dd2container"> 
    <select name="dd2" class="form-control"> 
    <option value="" selected="selected">--select--</option> 
    </select> 
</div> 

Jetzt können Sie getDD3() Funktion machen, wie ich getDD2 tat (siehe oben). Ich hoffe, das kann helfen.

Wenn Sie drei auf einmal auswählen möchten, können Sie alle drei Auswahlfelder in die getdd2.php einfügen und die Datenbank für jede Basis nach den Daten aus dem ersten Auswahlfeld abfragen.

+0

Danke. Ich werde es versuchen und dich wissen lassen. Danke nochmal – Sam

+0

DD1, DD2, DD3 sind unabhängig von Magazinen Dropdown. Ist die Onchange-Funktion in jedem DD1, DD2, DD3 Drop-Down möglich? M Voraussetzung ist, dass die Dropdown-Liste "Auswahl der Zeitschriften" die anderen 3 Dropdown-Felder sofort füllen sollte. Wenn es einen Fehler gibt, ignoriere bitte – Sam

+1

@ Jefferson, Wenn Sie drei auf einmal auswählen möchten, können Sie alle drei Auswahlkästchen in die getdd2.php setzen und die Datenbank für jede Basis auf die Daten aus dem ersten Auswahlfeld abfragen (Magazin Dropdown) –

Verwandte Themen