Javascript jquery$.post返回类型分配
我正在使用jquery向我的php代码提交一个使用post的ajax请求。我想使用返回的数据类型将其分配给javascript变量。 我该怎么做 当我执行var updatedNumOfPosts=parseInt数据时;它说updatedNumOfPosts是未定义的。我还尝试了var updatedNumOfPosts=data等。下面是我的代码,非常感谢您的帮助 javascript函数Javascript jquery$.post返回类型分配,javascript,php,jquery,Javascript,Php,Jquery,我正在使用jquery向我的php代码提交一个使用post的ajax请求。我想使用返回的数据类型将其分配给javascript变量。 我该怎么做 当我执行var updatedNumOfPosts=parseInt数据时;它说updatedNumOfPosts是未定义的。我还尝试了var updatedNumOfPosts=data等。下面是我的代码,非常感谢您的帮助 javascript函数 function pagerefresh() { $.post("searchPresentati
function pagerefresh()
{
$.post("searchPresentation.php", {get_num_posts:"yes"}, function ( data ){
var udpatedNumOfPosts = parseInt(data); //I would like to assign this variable
}
}
php函数
if (isset($_POST['get_num_posts']))
{
$user = $_POST['user'];
$num = num_of_posts($user);
echo $num;
}
$user=$_POST['user'];
是否传递任何“用户”变量
那么,您应该在函数之前声明变量,以便在EveryWhere中使用
像这样:
var udpatedNumOfPosts;
function pagerefresh() {
$.post("searchPresentation.php", {get_num_posts:"yes", user: "somedata"}, function ( data ){
udpatedNumOfPosts = parseInt(data);
}
}
或者有一个错误:更新的NumOfPosts,而不是uDPated
更新:尝试将对象转换为字符串:
function objToString (obj) {
var str = '';
for (var p in obj) {
if (obj.hasOwnProperty(p)) {
str += p + '::' + obj[p] + '\n';
}
}
return str;
}
udpatedNumOfPosts=objToString(data)-0;
您缺少post函数的结束括号,请将代码更改为:
function pagerefresh()
{
$.post("searchPresentation.php", {get_num_posts:"yes"}, function ( data ){
var udpatedNumOfPosts = parseInt(data); //I would like to assign this variable
});
}
具体来说,您需要在$.post的第二个参数中传递一个用户变量。我无法确定返回的数据类型。我修复了所有语法,尽管updatedNumOfPosts=parseIntdata会生成一个NaN。我不知道如何将给定的值转换为integer@user3769015你能显示数据的内容吗?console.logdata会很好。document.writedata会产生15。因此表示表中有15行,但不知道可以是什么。尝试updatedNumOfPosts=data-0;请尝试此操作,并让我知道它的结果:typeofdata。我需要知道数据的类型,以便确定它是否可以与parseInt一起使用。