0

最初の選択ボックスが正常に動作し、2 番目の選択ボックスをさらにいっぱいにする必要があるスクリプトがありますが、何らかの理由でそれが起こることはありません。

2番目の選択ボックスを正しく配置していない理由がわかりません。最初のボックスが機能するため、両方のボックスのクエリが機能することを知っていますが、番号を選択すると2番目のボックスは空です

誰か助けてくれませんか?

jQuery/CSS

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
   $(document).ready(function() {
      $('.country').change(function() {
         var id = $(this).val();
         var dataString = 'id=' + id;

         $.ajax({
            type: 'post',
            url: 'box2.php',
            data: dataString,
            cache: false,
            success: function(html) {
               $('.city').html(html);
            } 
         });
      });
   });
</script>

<style>
   label {
      font-weight: bold;
      padding: 10px;
   }
</style>

HTML

<label>Klantvraag:</label>
<select name="country" class="country">
   <option selected="selected">Kies uit lijst</option>
<?php 
   include 'config/instellingen.php';

   $query = 'SELECT DISTINCT Klantvraag FROM `DWA` WHERE `Status DWA` = \'DBAA\' AND `Kenmerk` <> \'\'';

   if ($result = mysqli_query($connect, $query)) {
      while ($get = mysqli_fetch_assoc($result)) {
         echo '<option value="' . $get['Klantvraag'] . '">' . $get['Klantvraag'] . '</option>';
      }
   }
?>
</select> <br/><br/>
<label>Contract nr.:</label>
<select name="city" class="city">
   <option selected="selected">Kies uit lijst</option>
</select>

PHP

<?php
   if ($_POST['id']) {
      $id = $_POST['id'];

      include 'config/instellingen.php';

      $query = 'SELECT `Contract nr.` FROM `DWA` WHERE `Klantvraag` = \'1258819\'';

      if ($result = mysqli_query($connect, $query)) {
         while ($get = mysqli_fetch_assoc($result)) {
            echo '<option value="' . $get['Contract nr.'] . '">' . $get['Contract nr.'] . '</option>';
         }
      }
   }
// ^ missing bracket right here
?>
4

3 に答える 3

0

countryセレクターは、最初の選択ボックスにのみ一致するクラス名を使用しています。

$(".country").change(function()

セレクターまたはクラス名を調整するか、2 番目の選択ボックスに別のセレクターを配置してください。

于 2013-06-28T07:38:24.377 に答える
0

whereクエリは常にその特定のIDを検索するため、クエリは動的ではないと思います

$id= $_POST['id'];
include("config/instellingen.php");
$query = "SELECT `Contract nr.` FROM `DWA` WHERE `Klantvraag` = '1258819'";
                                                          //----^^^^^^^^--here..

そうあるべきだと思う

$id= $_POST['id'];
include("config/instellingen.php");
$query = "SELECT `Contract nr.` FROM `DWA` WHERE `Klantvraag` = '".$id."'";
于 2013-06-28T07:41:37.363 に答える
0

最後のif構文には、終了ブラケットがありません}

于 2013-06-28T07:48:17.367 に答える