Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.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
Php jQuery即使在成功调用AJAX后也不更新span_Php_Jquery_Html_Ajax - Fatal编程技术网

Php jQuery即使在成功调用AJAX后也不更新span

Php jQuery即使在成功调用AJAX后也不更新span,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我有一个生成PDF文件的PHP脚本(我使用的是www.fpdf.org上的fpdf)。我使用AJAX$.post(…)从html调用PHP。单击“提交”按钮时,范围显示“请稍候…”。正在生成PDF,但跨度仍显示“请稍候…”。跨度未得到更新。下面是AJAX调用的代码: $(document).ready(function() { $("#genByDt").submit(function() { $("#msg").text('Please wait....').fadeIn(1000);

我有一个生成PDF文件的PHP脚本(我使用的是www.fpdf.org上的fpdf)。我使用AJAX$.post(…)从html调用PHP。单击“提交”按钮时,范围显示“请稍候…”。正在生成PDF,但跨度仍显示“请稍候…”。跨度未得到更新。下面是AJAX调用的代码:

$(document).ready(function()
{
$("#genByDt").submit(function()
{
    $("#msg").text('Please wait....').fadeIn(1000);

    var otherValidations = validate(document.genByDt);
    if(otherValidations == false)
    {
        return false;
    }
    else
    {

        $.post("/pawn/fpdf/chittiCode/generateChitti.php",{ whichSubmitted:$('input[name = whichSubmitted]').val(), dateSelected:$('input[name = dateSelected]').val() }, function(data){

        var obj = $(data);              

        if($.trim($(obj,'body').text()) == 'success')
        {
            $("#msg").fadeTo(200,0.1,function(){
                $(this).text('Bills generated successfully !!').fadeTo(900,1);
                $('input[name = dateSelected]').val('');
            });

        }
        else if($.trim($(obj,'body').text()) == 'zeroBills')
        {
            $("#msg").fadeTo(200,0.1,function(){ 
                $(this).text('No bills for the selected date !!').fadeTo(900,1);
                $('input[name = dateSelected]').val('');
            });
        }

        });

        return false; //not to post the  form physically
    }
});

});
我知道问题出在我的情况下。PHP正在返回一个字符串,但是$(数据)的类型是object[我通过使用alert(obj);]找到它]。以下是PHP的一部分:

if($success == 1)
{
echo "success";
}
else
{
echo "zeroBills";
}

如果PHP返回一个字符串,那么
数据
将是一个字符串,并且应该这样处理:

if (data === "success") {
   // your code here
} else if (data === "zeroBills") {
   // your code here
}

(您提到您通过说
alert(obj)
找到了
obj
的类型;如果说
alert(data)
,会发生什么情况?)

您期望什么?您使用PHP脚本生成的字符串,并使用
$(data)
将其转换为jQuery对象。之后,它不再是一个字符串

第二:您尝试将
body
下带有选择器的元素
obj
(它根本不是选择器)的内容与“success”进行比较,甚至不将其添加到DOM中

你为什么不把数据和“成功”放在第一位呢

if(data === "success")

你真的需要那个东西吗?为什么不直接使用字符串呢

if(data === 'success')
{}
else if(data === 'zeroBills')
{}

具体来说就是:
$.trim($(obj,'body').text()

为什么还要将
obj
变量指定给
data

尝试:


为什么不在PHP页面中使用jQuery$.ajax函数和:

回应“如果成功,任何消息”

标题('Error 404:Any Error message');(故意发送错误代码,我不记得语法)

成功:函数(html){$(“#message”).html(html);},
错误:函数(x,e,t){$(“#message”).html(t)}/“t”是“任何错误代码”

@KristerAndersson-请帮帮我!!!!
if(data == 'success')