语法错误:意外令牌<

时间:2019-02-10 20:24:37

标签: php jquery ajax

在自定义网站时,我进行了许多更改,看起来好像在某个地方搞砸了,但我没错。非常感谢您的帮助。

这是正在发生的事情,在登录到我的帐户(作为客户)之前,我可以毫无问题地将产品添加到购物车中。但是,一旦登录,每次我尝试将新产品添加到购物车时,都会收到错误消息

  

SyntaxError:意外令牌<

  

SyntaxError:意外令牌<< / p>      

/ext/posc_ajxcart/js/posc_ajxcart_functions.js:91:43 Object.error()

     

ext / jquery / jquery.js:2:27449 i()

     

ext / jquery / jquery.js:2:28213 Object.fireWith作为rejectWith

     

ext / jquery / jquery.js:4:22746 y()

     

ext / jquery / jquery.js:4:26925 XMLHttpRequest.c()

,即使我收到错误消息,该产品也已添加到购物车中。刷新页面后,由于该产品已经在购物车中,因此错误消失了,我可以将更多相同的产品添加到购物车中。

因此,尚未放入购物车的任何产品在首次添加到购物车时都会返回此错误,并且仅当我以客户身份登录时,才会再次发生此错误。

,上面的/ext/posc_ajxcart/js/posc_ajxcart_functions.js:91:43 Object.error()是指:

var err = eval("(" + xhr.responseText + ")");

这是代码,在此先感谢您。

function poscExtraBtnLink($products_lst){
if (POSC_AJXCART_STATUS == 'True') {
    $products_id = $products_lst['products_id'];
    if(tep_has_product_attributes($products_id)==1){
        return 'onclick="setPoscShowOptions(this, \''.$products_id.'\', \''.tep_href_link(FILENAME_DEFINE_POSC_AJXCART,'products_id='.$products_id).'\'); return false;"';
    }else{
        return 'onclick="setPoscAjxAddCart(this, \''.$products_id.'\'); return false;"';
    }
}
return false;
}


//set AjxAddtoCart
function setPoscAjxAddCart(e, products_id, action, qty, d, t){
var action = action || 'add';
var qty = qty || '1';

setPoscAjxloaderClass(e, 'add', t);
try {
    jQuery.ajax({
        type : 'POST',
        url  : posc_ajxcart_file,
        dataType : 'json',
        data : (((typeof d!="undefined") && d!='')? d:{'posc_action': action,'products_id': products_id, 'qty': qty}),
        success :function(data){
            setPoscAjxData(e, data, action);
            setPoscAjxloaderClass(e, 'remove', t);
        },
        error: function(xhr, textStatus, errorThrown) {
            var err = eval("(" + xhr.responseText + ")");
            setPoscAjxQck(e, "Error: " + xhr.status + ": " + xhr.statusText);
            setPoscAjxloaderClass(e, 'remove', t);
        }
    });
} catch (e) {
}
return false;

}

2 个答案:

答案 0 :(得分:0)

很高兴,我终于找到了此错误,并希望在此分享,以防其他人遇到类似的问题。 就像我在上面的第一篇文章中所述,只有在客户端登录后,我才收到SyntaxError: Unexpected token <错误。

所以基本上发生的是,我在一个SQL查询中有一个错字(而不是manufacturers_id我有manufacturer_id),它是在客户登录时执行的。

当登录的客户试图在购物车中添加新商品时,INSERT查询返回错误,而jQuery未显示错误。

希望这会对某人有所帮助。

谢谢。

答案 1 :(得分:-2)

尝试更改您的dataType。我建议将其更改为文本,然后将JSON字符串化。如果它不起作用,请验证您的标记。