2016-11-13 6 views
0

私は、IDS第一選択、第二の選択肢と3番目の選択肢を持つ3つの選択ボックスを持っているため、一度動作します。はデシベル値

<select id="first-choice" style="border-radius: 0; width: 100%;" class="form-control" name="area"> 
            <option value="">-Select-</option> 
            <option value="">All</option> 
            <?php 
            global $connection; 
            $area_query = "SELECT DISTINCT area FROM archivo WHERE LENGTH(area) > 1"; 
            $result_area = mysqli_query($connection, $area_query); 
            while($row_a = mysqli_fetch_array($result_area)): 
            ?> 
             <option><?php echo $row_a['area'] ?></option> 
            <?php endwhile;?> 
           </select> 

<select id="second-choice" style="border-radius: 0; width: 100%" class="form-control" name="category"> 
            <option value="">-Select-</option> 

           </select> 

<select id="third-choice" style="border-radius: 0; width: 100%" class="form-control" name="product"> 
            <option value="">-Select-</option> 


           </select> 

と私は、次のjqueryのコードを持っている:

$(document.body).on('change','#first-choice',function(){ 
    //alert('Change Happened'); 
    $("#second-choice").load("../config/select_eng.php?choice=" + $("#first-choice").val()); 

}); 

$(document.body).on('change','#second-choice',function(){ 
    //alert('Change Happened'); 
    $("#third-choice").load("../config/select_eng_2.php?choice=" + $("#second-choice").val()); 

}); 

事は、それが唯一の第二に最初の選択ボックスからではなく、第二から第三に、一度に動作することです。どうしてこれなの?助けてください。

最初のもののためのPHPコード:

$choice = $_GET['choice']; 
$query = "SELECT DISTINCT category FROM archivo WHERE area='$choice' AND base = 'Engineering'"; 
$result = mysqli_query($connection, $query); 
while ($row = mysqli_fetch_array($result)) { 
echo "<option >" . $row{'category'} . "</option>"; 

秒のためのPHPコード:

$choice = $_GET['choice']; 
$query = "SELECT DISTINCT platform_type FROM archivo WHERE category='$choice'"; 
$result = mysqli_query($connection, $query); 
while ($row = mysqli_fetch_array($result)) { 
echo "<option value='{$row['platform_type']}'>" . $row{'platform_type'} . "</option>"; 

}

+0

なぜ2つのIDをそれぞれ選択するのですか? – ScanQR

+0

こんにちは、私はid = "area"をすべて削除しましたが、それでも仕事はしません – user3785034

+0

select要素にロードしようとしているサーバから結果を共有してください。 .load()は、一致する要素に結果をロードすることに注意してください。 – ScanQR

答えて

0

あなたはselect_eng.php第二の正確なコピーを必要とします。

 <select id="second-choice" style="border-radius: 0; width: 100%" 
    class="form-control" name="category" id="area"> 
      <option value="">-Select-</option> 
      //Select option populated from the db 
     </select> 

、あなたがIDを有する第2の周囲に選択範囲を置くことができます。

//use this code in the main page. 
    <span id="third-choice"> 
    <select id="second-choice" style="border-radius: 0; width: 100%" 
     class="form-control" name="category"> 
     <option value="">-Select-</option> 
    </select> 
</span> 

//in select_eng.php, use this    

    $choice = $_GET['choice']; 
    $query = "SELECT DISTINCT platform_type FROM archivo 
      WHERE category='$choice'"; 
    $result = mysqli_query($connection, $query); 
    echo '<select id="second-choice" style="border-radius: 0; width: 100%" 
     class="form-control" name="category">'; 
    while ($row = mysqli_fetch_array($result)) { 
     echo '<option value="'.$row['platform_type'].'">'.$row['platform_type'] .'</option>'; 
    } 
    echo '</select>'; 

IDセレクタは、一意である必要があります。 id = "area"という2つのidがあります。s in your select. You do not needこれが役立つことを願っています。

+0

でなければならない私は、IDを削除し= "領域"でもまだ動作しません。セカンド選択からセカンド選択へのセカンド選択ではセカンド選択で動作します – user3785034

+0

ブラウザキャッシュをクリアしてもう一度やり直してください。 2番目の選択のために '' –

+0

のような別の名前を使用することができます。私はPHPのコードを使ってポストを更新しました。データベースから来ていないものをエコーすると、データベースの行ではなく、クエリーをチェックして、正しいものになりました。 – user3785034

関連する問題