意外的< get变量的错误

时间:2015-01-13 23:31:19

标签: php jquery ajax

我收到的错误是

Uncaught SyntaxError: Unexpected token <

在简单地解决问题之后,它归结为对我没有任何意义的一行。基本上,每当我们在促销代码的输入字段上获得密钥时,我们检查它是否是有效的促销代码。现在我把它简化到这个水平。首先,这是jquery

$('#promo_code_field').bind('keyup', function(){
    $.ajax({
        type: "GET",
        url: "functions/ajaxProcessPromoCode.php",
        data: "original_price=2.99" + "&series_number=0" + "&promo_code=test20",
        success: function(response){
        }
    });
});

正如您所看到的,在这种情况下数据是硬编码的,并且成功响应是空白的,因此没有任何内容可以导致错误。它调用的php文件是这样的

<?php
    $original_price = $_GET['original_price'];
    $promo_code = $_GET['promo_code'];
    $series_number = $_GET['series_number'];

    $return_data = array("price" => 2.99, "display_text" => "", "series_number" => 0);
    echo json_encode($return_data);
?>

正如您所看到的,现在所有这些都是硬编码的,并且为了简单起见,没有GET变量或任何其他检查的验证 - 一切都降到了绝对最小值。运行此结果会导致“意外的令牌&lt;”错误。为了解决这个错误,我所要做的就是删除$ series_number赋值。我无法得到的是这项任务如何可能导致错误。对我来说根本没用。

1 个答案:

答案 0 :(得分:0)

您应该只能添加:

console.log(response) 

并查看开发人员工具以查看返回的JSON对象的格式。

这可能是您的问题:

https://stackoverflow.com/a/20672598/3313754