链接ajax选择框

Chained ajax Select Boxes

本文关键字:选择 ajax 链接      更新时间:2023-09-26

我有一些问题与我的html/php/ajax代码的依赖(或链接)选择。我想在我选定了大学之后在我的菜单上显示学院列表。我给你看一下我的(意大利语)代码。我希望你能帮助我。谢谢。

javascript ajax代码:

<script type="text/javascript">
$(document).ready(function()
{
$(".universita").change(function()
{
var dataString = 'id='+ $(this).val();
$.ajax
({
type: "POST",
url: "ajax_facolta.php",
data: dataString,
cache: false,
success: function(html)
{
$(".facolta").html(html);
} 
});
}); 
});

关于两个选择框的html代码:
<td align="right">Università:   </td>
    <td>
    <select class="input" name="universita">
        <option selected="selected">--Seleziona Università--</option>
    <?php 
        require('config.php');
        $query = mysqli_query($con, "SELECT * FROM UNIVERSITA order by id ASC");
        $num_righe = mysqli_num_rows($query);
        for($x=0; $x<$num_righe; $x++)
            {
            $rs = mysqli_fetch_row($query);
                            $id = $rs[0];
            $nome = $rs[1];
    ?>
            <option value="<?php echo $id;?>"> <?php echo $nome; ?></option>
    <?php
            }
    ?>
    </select></td>
</tr>
<tr>
    <td align="right">Facoltà: </td>
    <td><select class="input" name="facolta">
            <option selected="selected">--Seleziona Facoltà--</option>
        </select></td>
</tr>

文件ajax_facolta.php:

<?php
require('config.php');
if($_POST['id'])
{
    $id=$_POST['id'];
    $sql = mysqli_query($con, "SELECT * FROM FACOLTA WHERE id_univ='$id' ");
    echo '<option selected="selected">--Selziona Facoltà--</option>';
    while($row=mysqli_fetch_array($sql))
        {
        $id=$row['id'];
        $nome=$row['nome'];
        echo '<option value="'.$id.'">'.$nome.'</option>';
        }
}

?>

和简单的configure.php:

<?php
$con = mysqli_connect("127.6.143.130","xxxxx","xxxxx", "jeme");
if (!$con)
  {
  die('Errore nella connessione: ' . mysqli_connect_error());
  }

?>

数据库非常简单。UNIVERSITA有(id, name)FACOLTA有(id, name, id_univ)。我没有发现任何错误,但它不工作。谢谢你的帮助。

在HTML中有:

 <select class="input" name="universita">

而你正在使用

$(".universita").change(function()

$(".universita")将尝试搜索类名为" universita "的HTML控件

所以在代码中改变一些东西。我希望它能起作用

1). <select class="input" name="universita" id="universita">
2). $("#universita").change(function()
3). <td><select class="input" name="facolta" id="facolta">
4). $("#facolta").html(html);