Jquery Ajax加载/发布

Jquery Ajax加载/发布,ajax,jquery,Ajax,Jquery,我正在尝试使用.load方法发布到一个页面,然后回显发布的内容以查看它是否正常工作,我无法让它正常工作。我告诉我变量是未定义的,以下是我得到的: teachers.php: <?php echo $POST['class']; <?php echo $_POST['class']; ?> 一旦单击某个内容就会触发 #test是我希望将数据发布到的 谢谢你的帮助。这是$\u POST而不是$POST。我不知道这是否是一个打字错误,但这也会造成一些问题 大多数情况下,像

我正在尝试使用
.load
方法发布到一个页面,然后回显发布的内容以查看它是否正常工作,我无法让它正常工作。我告诉我变量是未定义的,以下是我得到的:

teachers.php:

<?php
echo $POST['class'];
<?php
    echo $_POST['class'];
?>
一旦单击某个内容就会触发

#test
是我希望将数据发布到的


谢谢你的帮助。

这是
$\u POST
而不是
$POST
。我不知道这是否是一个打字错误,但这也会造成一些问题

大多数情况下,像这样的问题都是由于AJAX的异步性造成的。 通过AJAX加载的所有内容(使用
.post()
.load()
.AJAX()
.get()
)都不“存在”,除非请求-响应的AJAX往返已经完成

确保在回调函数中“使用”AJAX加载的内容(一个HTML位,一个JSON响应,…),该回调函数在AJAX请求成功时调用

例如,假设我的页面
ajax.php
返回以下字符串:
hello
,我们想在
#mydiv
中加载此(HTML)字符串:

$("#mydiv").load("ajax.php");
console.log($("#mydiv #ajaxdiv")); <- undefined
之所以有效,是因为JQuery确保只有在请求完成时才使用回调函数。 (您也可以添加参数,比如
{class:test}
,只需将它们放在URL和回调函数之间)


编辑:使用$\u POST而不是$POST。

如果您只是在单击id为
test
的内容时尝试将信息从jQuery发布到PHP文件,请执行以下操作:

teachers.php:

<?php
echo $POST['class'];
<?php
    echo $_POST['class'];
?>

你用的方法不对。使用
$.post()
$.ajax()
错误。如果传递的是对象而不是查询字符串,则它使用POST而不是GET。很像OP的例子。我想当我输入正确的东西时,它会有帮助。我讨厌这样简单却没有意识到的事情。谢谢你的帮助!我们都做过了。有时候只是需要另一只眼睛。干杯。通过删除这些打字错误相关的问题,我们真的需要你的帮助!你介意在这个问题上投一票吗?
$('#test').click(function() {
    $.post('teacher.php', {class: 'test'},
        function(output) {
            //output = what is echoed from the php file.
            alert(output);
        );
});