5 つの列を持つ mysql データベース テーブルがあります。
id、列 A、列 B、列 C、列 D
データテーブルにこれらの値を入力して、各列に 2 つの (個別の) 値が含まれるようにしました。
columnA 1, columnB 1, columnC 1, columnD 1
columnA 1, columnB 1, columnC 1, columnD 2
...
columnA 2, columnB 2, columnC 2, columnD 2
ユーザーがドロップダウン リストからこれらの値を選択できるようにします。columnA から最初のデータを選択すると、選択した値に応じて columnB の値が他の選択ボックスに表示されます。などなど..だから、ajax-jqueryを使う必要があると思います。これが私が使用したスクリプトです。
<script type="text/javascript">
$(document).ready(
function() {
$(".columnA").change(
function() {
var columnA=$(this).val();
var dataString = 'columnA='+ columnA;
$.ajax ( {
type: "POST",
url: "ajax_try.php",
data: dataString,
cache: false,
success: function(html)
{
$(".columnB").html(html);
}
}
);
}
);
});
</script>
そしてphpコード。
<?php
//index.php
include('db.php');
$sql=mysql_query("SELECT ID, columnA FROM try GROUP BY columnA");
while($row = mysql_fetch_array($sql))
{
$id = $row['id'];
$columnA = $row['columnA'];
echo '<option value="'.$id.'">'.$columnA.'</option>';
}
?>
<?php
//ajax_try.php
include('db.php');
if($_POST['columnA'])
{
$columnA = $_POST['columnA'];
$sql = mysql_query("SELECT ID, columnB from try WHERE columnA = '$columnA' GROUP BY columnB");
while($row = mysql_fetch_array($sql))
{
$id = $row['id'];
$columnB = $row['columnB'];
echo '<option value="'.$id.'">'.$columnB.'</option>';
}
}
?>
columnA の値を取得していますが、そのうちの 1 つを選択しても何も起こりません。そして、ajaxを使用して他のドロップダウンリストをバインドする方法がわかりません..