努力让我了解 AJAX 的成功范围。
我正在尝试从 AJAX 调用加载一些数据,然后使用 jQuery 将其附加到已经存在的ul
这个例子帮助了我,但我不知道如何从“this”中引用特定元素。
所以我已经this
将成功函数作为 传递给了that
,但是这一行:
$('li.loading').before(nextLoad);
失败:
Uncaught Error: NOT_FOUND_ERR: DOM Exception 8
我假设,我需要使用that
跟随我的元素,但无法计算出语法。
var that = this;
$.ajax({
type: 'GET',
url: url,
async: true,
jsonpCallback: 'callback',
contentType: "application/json",
dataType: 'jsonp',
success: function(data)
{
$.each(data.products, function(key, val)
{
items.push('<li class="product"><a href="product.html"><span class="store-badge"></span><img src="'+val.image+'" width="124" height="166" /><h3>'+val.title+'</h3></a></li>');
});
var nextLoad = items;
if (loadNumber <= 4) {
$('li.loading').before(nextLoad);
};
if (loadNumber >= 4) {
$('li.loading').hide();
};
$('.scroll-horizontal').mCustomScrollbar("update");
},
error: function() {
console.log('failed');
}
});
编辑:
控制台日志记录导致:
Window
Infinity: Infinity
$: function (a,b){return new e.fn.init(a,b,h)}
Array: function Array() { [native code] }
ArrayBuffer: function ArrayBuffer() { [native code] }
Attr: function Attr() { [native code] }
Audio: [object Function]
AudioProcessingEvent: function AudioProcessingEvent() { [native code] }
BeforeLoadEvent: function BeforeLoadEvent() { [native code] }
Blob: function Blob() { [native code] }
Boolean: function Boolean() { [native code] }
//CONTIUNES
控制台记录 nextload 也会导致
Uncaught Error: NOT_FOUND_ERR: DOM Exception 8