ajax发布请求到没有响应的PHP(每次都是假设)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax发布请求到没有响应的PHP(每次都是假设)相关的知识,希望对你有一定的参考价值。
我正在使用jquery multiselect插件,我想在select / deselect事件上执行ajax请求。
我的问题:当我将请求发送到php文件时,ISSET(VAR)每次都返回false,这样我就无法将变量传递给php文件。
但Chrome / Firefox的Firebug扩展程序向我显示POST值设置正确POST - >“Response myvar”但GET为空。
如何将变量传递给php文件? (我在网上搜索但没有找到任何内容。)
我的脚本,这个指针来自multiselect插件,如果选择了一个对象,则返回afterSelect
afterSelect: function()
{
this.qs1.cache();
this.qs2.cache();
count++;
var dataString = "count=" + count;
if ( count > 0 )
{
$.ajax
({
type: 'POST',
url: 'page-to-send-request.php',
data: dataString,
success: function()
{
$("#div-to-load").load("page.php #div-to-load").fadeIn('slow');
},
error: function (xhr, ajaxOptions, thrownError)
{
alert(xhr.status);
alert(thrownError);
}
});
}
},
要加载的php页面仅用于测试
if($_POST['count'])
{
$count = $_POST['count'];
echo "Count " .$count;
}
else{ echo "FALSE"; }
预期结果应该是
数5
但实际产出是
假
答案
第一次尝试
success: function(data)
{
console.log(data);
},
它应该输出"Count " .$count;
,如果没有
试着用
var dataString = {count: count};
然后你可以使用
$("#div-to-load").html(data).fadeIn('slow');
返回false的原因..你使用.load加载php页面..当你加载它时... javascript知道它是一个单独的页面..所以$_POST['count']
在这种情况下是未定义的。并且它将始终返回False
你的成功功能应该是这样的
success: function(data)
{
$("#div-to-load").html(data).fadeIn('slow');
},
以上是关于ajax发布请求到没有响应的PHP(每次都是假设)的主要内容,如果未能解决你的问题,请参考以下文章
Wordpress jQuery ajax GET 请求到 php 函数,该函数在每个 php 任务完成时逐步发回多个响应