AJAX加载PHP响应

时间:2017-04-04 19:27:59

标签: php jquery ajax

如何通过ajax将我的PHP响应中的数据加载到面板中?

我的PHP输出正确,我可以在响应中看到一个表,但我可以在我的网页上建立数据。

到目前为止,这是我的jquery / ajax。它正确地将值传递给PHP,并且PHP通过它的echo构建表,但是我缺少AJAX来显示表吗?

PHP:

<?php
foreach ($lines as $value) {
   echo "<input name='data[]' value='$value'><br/>";
} 
?>

JQUERY:

$(function () {
            $('#rotator').change(function (e) {
                var rotator = $("#rotator").val();
                $.ajax({
                    type: "POST",
                    url: "tmp/JFM/National/national.php",
                    data: {
                        rotator: rotator
                    },
                    success: function (result) {
                         $('#panel').load(result);
                    }
                })
                return false;
            });
        });

2 个答案:

答案 0 :(得分:0)

移动你的功能:

$.ajax({...,success: function(){...}});

$.ajax({..}).done(function(){...});

如果不起作用,请尝试将async:false添加到ajax对象中......

$.ajax({...,async:false}).done(function(){...});

希望它有帮助... =}

答案 1 :(得分:0)

答案是双重的。

我试图追加到我的主要部门,这显然不可能发生。我创建了一个新的空div,并能够在那里加载结果。

除此之外,还需要将.load(结果)更改为.html(结果)的注释。

下面是正确的jquery代码。

$(function () {
            $('#rotator').change(function (e) {
                var rotator = $("#rotator").val();
                $.ajax({
                   type: "POST",
                    url: "tmp/JFM/National/national.php",
                    data: {
                        rotator: rotator
                    },
                    success: function (result) {
                        console.log(result);
                         $('#test').html(result);
                    }
                })
                return false;
            });
        });