2
我有一个MySQL数据库表5列。从同一个数据表填充下拉列表与ajax
ID,columnA,columnB,columnC,columnD
我填充数据表与这些值,以便每一列具有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
我希望用户可以从下拉列表中选择这些值。当他/她从列A中选择第一个数据时,列B的值将根据选定的值出现在另一个选择框中。等等..所以我想我需要使用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的值,但是当我选择其中一个值时,没有任何反应。我不知道如何使用Ajax结合其他下拉列表..