JQuery Needs解释中的字符串比较

时间:2015-03-31 06:16:10

标签: jquery

我在使用我的代码找不到解释时遇到了麻烦。 在回复来自php的值并通过“回复”#39; 在jquery中,我试图比较响应值的字符串..

不工作:

success:function(response)
            {
                if (response=='added successfully')
                {
                   alert("");
                }
            },

我通过提出“回应”来找到互联网上的解决方案。在$ .trim()中。我发现的其他解决方案是放置' exit();'  在PHP中回显值之后..

工作

success:function(response)
            {
                if ($.trim(response)=='added successfully')
                {
                   alert("");
                }
            },

    if ($resultset)
    {
        echo 'added successfully';
        exit();
    }

任何人都可以说出为什么第一个代码不起作用(希望有一种简单的方法来解释它)?

2 个答案:

答案 0 :(得分:0)

当你进行ajax调用时说“echofile.php”,作为回应它会给你空的前导和尾随空格。在jsp中,它有一个页面指令来修剪输出。 <%@ page trimDirectiveWhitespaces="true" %> 或者您可以在jquery成功回调函数中修剪响应。

要确认我的观点,您可以在“不工作”代码中提醒。它肯定会有一个领先或尾随的空间。所以你必须在客户端或服务器端修剪它

答案 1 :(得分:-1)

最有可能在脚本末尾的?>之后有一些空格。 PHP从字面上输出<?php ... ?>以外的所有内容。 exit()会导致脚本立即停止,因此它永远不会以空格结束。

确保<?php是脚本的第一行。并且您根本不需要脚本末尾的?>。如果您不需要返回文字HTML模式,只需在PHP执行模式下结束脚本。