【问题标题】:Checking returned data from php file with equal sign and get () method jquery用等号和get()方法jquery检查从php文件返回的数据
【发布时间】:2011-06-07 13:33:39
【问题描述】:

我有这个:

$(document).ready(function() {

$.get('getturn.php', function(data){
    if (data!=='4') { alert ('  change'); }
    if (data=='4') { alert ('no change');}
    });
});

getturn.php 如果轮数等于会话 id,则回显 4,否则回显轮数。 getturn.php 会做它应该做的事,它会回显 4 或类似 0、1、2、3 的数字;但是,当我从另一个文件中获取上面看到的数据并检查它是否等于 4 时,我无法得到正确的答案......我做错了什么?我想我们可以用 data=='yes' 检查输出是否是肯定的?但是我们不能检查带有 data=='4' 的数字?

【问题讨论】:

  • 请把你的php代码也粘贴到这里吗?如果你这样做console.log(data); 会发生什么?
  • 您是否通过萤火虫检查了响应。可能是你的ajax请求被缓存了。
  • @GaryGreen 数据类型是一个字符串,但是当我将它设为 data='4'data!='4' 时,它会同时提醒 changeno change

标签: php jquery get


【解决方案1】:

您是否已完成alert(data); 以查看返回的内容?

我认为你应该试试这个轻微的修改:

if (data == '4') { alert ('no change');}
            else { alert ('  change'); }

基于此答案:How do the PHP equality (== double equals) and identity (=== triple equals) comparison operators differ?

【讨论】:

  • @Frosco 嗯...出于某种原因 localhost/getturn.php 回显 4 但当我提醒它时它会提醒 1。虽然类型仍然是字符串..
  • @Logan 您回复的第一部分抵消了第二部分。你怎么确定它与 4 相呼应?除非您使用浏览器开发工具并检查真实响应,否则您怎么知道?
  • @Frosco well localhost/getturn.php 只返回数字 4 没有别的......这还不足以检查 php 文件吗?为什么我使用ajax get时会有所不同?可以请教一下吗?
  • @Logan 我不知道该怎么解释,如果 alert(data) 向您显示 1 这告诉您什么?
  • 没关系,我在 php 脚本中发现了问题;在它提醒4之后,我按照你的回答做了,它奏效了,谢谢。
【解决方案2】:

如果正确理解您的问题,这将有所帮助:

data = parseInt(data);
if (!isNaN(data)) {
  if (data != 4) { ... }
  if (data == 4) { ... }
}

只需将“数据”变量转换为数值(例如,在这种情况下为整数)

【讨论】:

    猜你喜欢
    • 2015-11-06
    • 1970-01-01
    • 2012-03-01
    • 1970-01-01
    • 2014-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    相关资源
    最近更新 更多