链式ajax选择框

时间:2013-06-11 17:38:26

标签: php javascript html ajax html-select

我的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>';
        }

}

&GT;

和简单的configure.php:

<?php

$con = mysqli_connect("127.6.143.130","xxxxx","xxxxx", "jeme");

if (!$con)
  {
  die('Errore nella connessione: ' . mysqli_connect_error());
  }

&GT;

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

1 个答案:

答案 0 :(得分:2)

在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);

让我知道这有用吗?。