Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery$.post返回类型分配_Javascript_Php_Jquery - Fatal编程技术网

Javascript jquery$.post返回类型分配

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

我正在使用jquery向我的php代码提交一个使用post的ajax请求。我想使用返回的数据类型将其分配给javascript变量。 我该怎么做

当我执行var updatedNumOfPosts=parseInt数据时;它说updatedNumOfPosts是未定义的。我还尝试了var updatedNumOfPosts=data等。下面是我的代码,非常感谢您的帮助

javascript函数

 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一起使用。