Php 组合框值不返回

Php 组合框值不返回,php,javascript,jquery,Php,Javascript,Jquery,下面是我的php文件,有一个带有多个选项的组合框,选择时应根据选择显示新菜单 所有代码都在一个php文件index.php中 我不想刷新页面或提交应在选择/单击时完成的值 我的url看起来像这样 http://localhost/lms/grade/report/userdef/index.php?id=13 在计算机中,文件位于 C:\xampp\htdocs\lms\grade\report\userdef 这只是为了澄清,因为jQuery需要路径和我不擅长的东西 这是我的组合框和选择代

下面是我的php文件,有一个带有多个选项的组合框,选择时应根据选择显示新菜单

所有代码都在一个php文件index.php中

我不想刷新页面或提交应在选择/单击时完成的值

我的url看起来像这样

http://localhost/lms/grade/report/userdef/index.php?id=13
在计算机中,文件位于

C:\xampp\htdocs\lms\grade\report\userdef
这只是为了澄清,因为jQuery需要路径和我不擅长的东西

这是我的组合框和选择代码

<?php
$change;
if( isset($_GET['combo_1']) )
{
echo $change = $_GET['combo_1'];
}

echo '<select name="combo" id="combo_1">';
echo '<option value="2">Submative</option>';
echo '<option value="1">formative</option>';
echo '<option value="3">successive</option>';
echo '</select>';
 ?>
<br>
<?php
 if ($change==='1' or $change==='2')
{
$quizzes....// query for quezzes one
echo '<select id="combo_2">';
echo '<option value=" " selected="selected">Choose....</option>';
}
foreach($quizzes as $id2 => $name) {
     echo '<option value=' . $id2 . '>' . $name . '</option>';
}
echo '</select>';
   }

if ($change==='2')
{
quizzes2//query for quizes
echo '<select id="combo_3">';
echo '<option value=" " selected="selected">Choose....</option>';

foreach($quizzes2 as $id3 => $name2) {
     echo '<option value=' . $id3 . '>' . $name2 . '</option>';
}
echo '</select>';
}

if ($change==='3')
{
// another menu
}
//////more functionality
以下是工作代码:

PHP代码:

<?php
$comboBoxval = '';
// Check Ajax Request
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
    // If combo_1 exist
    if (isset($_GET['DDBV'])) {
       // simple
       echo $comboBoxval = $_GET['DDBV'];
       exit;
    }    
}
?>
<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $('#combo_1').change(function(){
        var DDBV = $(this).val();
        $.ajax({
                type: 'GET',
                url: 'test.php',
                data: {'DDBV':DDBV},
                success: function(data){
                    // show ajax output to next                 
                    //$('#combo_1').after(data);
                    console.log(data);
                }
            });
    });

});
</script>
<select name="combo" id="combo_1">
    <option value="2">Submative</option>
    <option value="1">formative</option>
    <option value="3">successive</option>
</select>

Java脚本代码:

<?php
$comboBoxval = '';
// Check Ajax Request
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
    // If combo_1 exist
    if (isset($_GET['DDBV'])) {
       // simple
       echo $comboBoxval = $_GET['DDBV'];
       exit;
    }    
}
?>
<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $('#combo_1').change(function(){
        var DDBV = $(this).val();
        $.ajax({
                type: 'GET',
                url: 'test.php',
                data: {'DDBV':DDBV},
                success: function(data){
                    // show ajax output to next                 
                    //$('#combo_1').after(data);
                    console.log(data);
                }
            });
    });

});
</script>
<select name="combo" id="combo_1">
    <option value="2">Submative</option>
    <option value="1">formative</option>
    <option value="3">successive</option>
</select>

$(文档).ready(函数(){
$('#combo_1')。更改(函数(){
var DDBV=$(this.val();
$.ajax({
键入:“GET”,
url:'test.php',
数据:{'DDBV':DDBV},
成功:功能(数据){
//将ajax输出显示到下一个
//$('combo_1')。在(数据)之后;
控制台日志(数据);
}
});
});
});
HTML代码:

<?php
$comboBoxval = '';
// Check Ajax Request
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
    // If combo_1 exist
    if (isset($_GET['DDBV'])) {
       // simple
       echo $comboBoxval = $_GET['DDBV'];
       exit;
    }    
}
?>
<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $('#combo_1').change(function(){
        var DDBV = $(this).val();
        $.ajax({
                type: 'GET',
                url: 'test.php',
                data: {'DDBV':DDBV},
                success: function(data){
                    // show ajax output to next                 
                    //$('#combo_1').after(data);
                    console.log(data);
                }
            });
    });

});
</script>
<select name="combo" id="combo_1">
    <option value="2">Submative</option>
    <option value="1">formative</option>
    <option value="3">successive</option>
</select>

次动态
有持续重大影响的
连续的

现在,您将在ajax响应中获得组合框值

为什么要回显组合框???你能把它放在html文件中而不是回显组合框吗??只是一个问题!要测试返回的内容,请尝试在浏览器中转到此url:
http://localhost/lms/grade/report/userdef/index.php?id=13
。这是查看您的
index.php
是否返回正确输出的最佳方法。这不是我问这个问题的原因,它没有返回@shaikibrahim的值,只是因为在编码之间更改标记很麻烦,这只是文件的一部分,我想这是因为结果没有回音的地方??请看,您正在调用该文件以执行某些操作。这和你点的菜一样,但服务员不知道你在哪一桌。差不多吧。这是我的理论。查看w3schools了解更多信息第四行,我重复了它,也使用了它不起作用:S我不能在url中添加一些内容:这会像self()或其他内容一样将其发布到当前页面,因为我认为我给出了错误的url,或者我必须给出完整的url?我的url看起来是这样的@stacymalina:首先告诉我一件事,你想实现什么。DD Box Selected value或其他什么,如果您只发送DD Box value,那么url param在这里有什么用处呢?这里有一个简单的解释,我有一个组合框,它在选择报告类型时有不同类型的报告,它应该打开一个或多个新的组合框和文本字段来设置参数,然后我只需单击“显示报告”来显示特定的报告我不想刷新报告类型选择页面,而是想将其结果置于if条件下打开特定的块好的,让我们以更简单的方式将其放置我只想在在不刷新或单击任何按钮的情况下使用的变量,表示您正试图在url中附加report_type=DDBoxValue,然后您将按report_type 1或2或3获取报告。。正确的。最后,您的url将是“”