Ajax 更改<;后刷新php内容;选择>;

Ajax 更改<;后刷新php内容;选择>;,ajax,Ajax,我正在创建一个包含三个主字段和几个附加字段的表单。其中一个主要字段是select type,另外一些字段也是select。所有select字段的值都来自连接到数据库的included.php文件。我的目标是使附加字段仅显示与主选择字段的选择相关的值。在我看来,只要单击main select,我就会用ajax调用一个javascript函数,它会将新值发送到同一个页面,并刷新main div的内容(包括所有包含php的文件,这些文件将采用新参数并显示所需的值) 关于ajax,我所知道的就是如何将变

我正在创建一个包含三个主字段和几个附加字段的表单。其中一个主要字段是select type,另外一些字段也是select。所有select字段的值都来自连接到数据库的included.php文件。我的目标是使附加字段仅显示与主选择字段的选择相关的值。在我看来,只要单击main select,我就会用ajax调用一个javascript函数,它会将新值发送到同一个页面,并刷新main div的内容(包括所有包含php的文件,这些文件将采用新参数并显示所需的值)


关于ajax,我所知道的就是如何将变量发送到不同的php页面并得到响应。有人能解释一下在刷新某个div时如何在同一页面上发送/更改php变量的值吗(或者有人知道更好的解决方案)。谢谢你抽出时间

假设您的主要选择如下:

<select id="main_select">
    <option value="car">Cars</option>
    <!-- other options -->
</select>
$(document).ready(function () {
    $('#main_select').change(function(){
        $.ajax({
            url: "something.php",
            type: "post",
            data: {option: $(this).find("option:selected").val()},
            success: function(data){
                //adds the echoed response to our container
                $("#details").html(data);
            }
        });
    });
});

允许JQuery,还是不允许?
<div id="details">
    <!-- the details options will be added here -->
</div>
<?php
$mainOption = $_POST['option'];
details($mainOption);

function details($opt)
{
    if($opt == 'car')
        echo '<select class="detail_select">
                <option value="bmw">BMW</option>
                <option value="ferrari">Ferrari</option>
                <option value="porsche">Porsche</option>
            </select>';
    else if($opt == 'another_option')
    {
        echo 'other details';
    }
}
?>
$(document).ready(function () {
    $('#main_select').change(function(){
        $.ajax({
            url: "something.php",
            type: "post",
            data: {option: $(this).find("option:selected").val()},
            success: function(data){
                //adds the echoed response to our container
                $("#details").html(data);
            }
        });
    });
});