我如何重定向页面JavaScript/PHP?

问题描述:

我想将页面重定向到从PHP脚本返回的URL。
当用户创建帖子时,我想返回mysql_insert_id()的值为post_id我如何重定向页面JavaScript/PHP?

$('input#submitButton').click(function() { 
    $.ajax({ 
     url: 'newpost.php', 
     type: 'post', 
     dataType: 'json', 
     data: $('form#myForm').serialize(), 
     success: function(data) { 
      window.location.replace("http://localhost/?post_id=..."); 
     } 
    }); 
}); 

我看了这里,但没有找到我想要的。 Link

+2

是'data'价值? ''post_id =“+ data' – 2014-12-07 22:26:46

+0

不是一个真正的php问题,它与jQuery和AJAX有更多的关系,你可以查看一下你的标签。 – adrian7 2014-12-07 22:41:26

在你的PHP脚本做:

echo json_encode(array(
    'id' => $THE_ID 
)); 

那么这里做:

$('input#submitButton').click(function() { 
    $.ajax({ 
     url: 'newpost.php', 
     type: 'post', 
     dataType: 'json', 
     data: $('form#myForm').serialize(), 
     success: function(data) { 
      window.location = "http://localhost/?post_id=" + data.id;    
     } 
    }); 
}); 
}); 
+0

为什么'success:function(data){..}'什么都没有发生。 ? – Marcus 2014-12-07 23:12:38

+0

可能是因为你之前得到了一个php或javascript错误。只需打开浏览器的控制台并检查你的帖子的回复。 – 2014-12-08 09:26:03

+0

感谢它的工作,我必须返回json。 – Marcus 2014-12-09 09:16:28