我想我只是在使用 $.post 时遇到了困难...我过去曾成功地使用过它,但我必须忘记一些重要的事情。我想要的只是一个“hello world”,但我得到了一个复杂的对象。我一头雾水。
var_test.php
<?php
PRINT "hi";
?>
index.html
<!doctype html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<html><head>
var thing = $.post( "var_test.php");
console.log(thing);
</head><body></body></html>
控制台输出
Object { readyState: 1, getResponseHeader: .ajax/v.getResponseHeader(), getAllResponseHeaders: .ajax/v.getAllResponseHeaders(), setRequestHeader: .ajax/v.setRequestHeader(), overrideMimeType: .ajax/v.overrideMimeType(), statusCode: .ajax/v.statusCode(), abort: .ajax/v.abort(), state: .Deferred/d.state(), always: .Deferred/d.always(), then: .Deferred/d.then(), 8 more… }
最佳答案
您应该添加一个回调来接收来自 php 的响应/数据:
$.post( "var_test.php", function(response) {
console.log(response);
});
该回调将在请求完成后执行,这样,您就可以确定您已准备好数据并设置为在 JS 中使用它。
关于php - $.post 在针对简单 php 时返回对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30584724/