0

A と B の 2 つのドロップダウン メニューがあります。

A の値は次のとおりです。- Car、Bike、Plane B の値は次のとおりです (車を選択した場合):- ferari、mercedes Bike を選択した場合:- Ducati、harley 飛行機を選択した場合:- MIG、Concorde

また、両方のドロップ メニューから値が選択された後、価格のテキスト ボックスが更新されます。これを繰り返し処理する必要があります。どうすれば実装できますか? 私はPHPにかなり慣れていません。

4

1 に答える 1

0

まず、jogesh_p の助けに感謝します。

私は最終的に両方のドロップダウンメニューを自動入力することに成功し、2番目のドロップダウンメニューを1番目のドロップダウンメニューに依存させました。

jogeshが php と jQuery を使用した Dynamic select box で彼のブログに言及したように

大いに役立ちました。

ただし、フォーラムは Google で上位の結果を占める傾向があり、私のような他の新しい php プログラマーが簡単に見つけられるようにするために、使用したコードを投稿します。

コーディングは 2 ページで行われました。

  1. attempt.php(これがメインページでした)
  2. level.php(このページは、最初のドロップダウン メニューの値が変更されたときに呼び出されます)

jQuery と PHP が使用されています。

attempt.php:

<?php
//connect to the database
$con = mysql_connect("localhost","root","12345") or die("error ".mysql_error());

//connect to the trav table
mysql_select_db("trav",$con) or die("error ".mysql_error());
?>

<html>
<head>    
   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
   <script>
   $(function()
   {

        $(window).load(function()
        {
            $('#building').change(function()
            {
                var parentValue = $(this).val();


                // Determine the selected Value
                if( parentValue.length != "" )
                {
                    $.ajax(
                    {
                        url: 'level.php',
                        data: {parent: parentValue},
                        success: function(data)
                        {
                            $('#level').html(data);
                        }
                    });
                }
                else
                {
                    $('#level').html('<option value="">Please Select</option>');
                }
            });
        });
    });
    </script>
</head>

<body>
<form method="post" action="<?php echo $PHP_SELF;?>">

    <table cellpadding="6" cellspacing="1">
        <tr>
            <td>
                <label>Select Building : </label>
            </td>
            <td>
                <select id="building">
                    <option value="">Please Select</option>
                    <?php
                        $query = "select * from build_list";
                        $result = mysql_query($query) or die('Error'.mysql_error());

                        while( $row = mysql_fetch_assoc($result) )
                        {
                            echo '<option value="'. $row['building'] .'">' . ucwords($row['building']) . '</option>';
                        }
                    ?>
                </select>
            </td>
            <td>
                <label>Select Level : </label>
            </td>
            <td>
                <select id="level">
                        <option value="">Please Select</option>
                </select>
            </td>
        </tr>   
    </table></center>
</form>
</body>
</html>

level.php:

<?php
//connect to the database
$con = mysql_connect("localhost","root","12345") or die("error ".mysql_error());

//connect to the trav table
mysql_select_db("trav",$con) or die("error ".mysql_error());

$building = mysql_real_escape_string($_GET['parent']);

$query = "select * from ";
$query = $query . $building;
$query = $query . ";";
$result = mysql_query($query) or die('Error in Child Table!');

echo '<option value="">Please Select</option>';
while( $row = mysql_fetch_assoc($result) )
{
    echo '<option value="'. $row['lvl'] .'">'.$row['lvl'].'</option>';
}
?>

上記のコードは jogesh のブログから使用されていることに注意してください。リンクは上記で言及されています。

私のように php を初めて使用するが、さまざまなことを試してみたい他の php プログラマーに役立つことを願っています。

于 2012-08-30T11:50:52.067 に答える