在自定义网站时,我进行了许多更改,看起来好像在某个地方搞砸了,但我没错。非常感谢您的帮助。
这是正在发生的事情,在登录到我的帐户(作为客户)之前,我可以毫无问题地将产品添加到购物车中。但是,一旦登录,每次我尝试将新产品添加到购物车时,都会收到错误消息
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;
}
答案 0 :(得分:0)
很高兴,我终于找到了此错误,并希望在此分享,以防其他人遇到类似的问题。
就像我在上面的第一篇文章中所述,只有在客户端登录后,我才收到SyntaxError: Unexpected token <
错误。
所以基本上发生的是,我在一个SQL查询中有一个错字(而不是manufacturers_id
我有manufacturer_id
),它是在客户登录时执行的。
当登录的客户试图在购物车中添加新商品时,INSERT查询返回错误,而jQuery未显示错误。
希望这会对某人有所帮助。
谢谢。
答案 1 :(得分:-2)
尝试更改您的dataType。我建议将其更改为文本,然后将JSON字符串化。如果它不起作用,请验证您的标记。