完全脱离了我的舒适区,我112%肯定我到目前为止所做的绝对垃圾和错误。我之前从未使用过ajax,谷歌也很混乱,所以我希望有一点知识的人可以帮忙!!
基本上我想要做的是搜索特定类的URL。如果url有该类,那么我想在当前页面上运行一个函数。
所以在我的例子中。我想在play.com上检查一部电影是否有货。如果它有库存(确实如此),我希望我的边框变为红色。
我在这里摆弄了它: http://jsfiddle.net/3Lmk8wdx/
这是我的代码 - 抱歉,如果它是疯狂的错误!!
$.ajax({
dataType: 'text',
type: 'GET',
url: 'http://www.play.com/stores/EntertainmentStore/listing/747490324',
success: function(result) {
var $stockLevel = $(result).find('.mtm');
if ($($stockLevel).hasClass('in-stock')){
$('#container').addClass('.active');
}
}
});
任何帮助都会非常感激,我可笑地混淆!!
答案 0 :(得分:1)
无法将AJAX(XMLHttpRequest)请求发送到其他域。 JSONP
实际上是克服XMLHttpRequest相同域策略的一个简单技巧。因此,您需要使用jsonp
作为数据类型。
所以试试这个:
$.ajax({
dataType: 'jsonp',
type: 'GET',
url: 'http://www.play.com/stores/EntertainmentStore/listing/747490324',
success: function(result) {
var $stockLevel = $(result).find('.mtm');
if ($($stockLevel).hasClass('in-stock')){
$('#container').addClass('.active');
}
}
});
使用此数据类型,ajax希望jsonp
回答,因此请求应返回jsonp形式的内容。在这种特殊情况下,ajax请求返回以<!document>...
开头的整个html文档。这就是为什么控制台中的错误:
Uncaught SyntaxError: Unexpected token <