我有一个ajax函数,它返回一个html。它看起来像:
<div class="item">
<h1></h1>
<div>
</div>
</div>
<div class="item">
<h1></h1>
<div>
</div>
</div>
<div class="item">
<h1></h1>
<div>
</div>
</div>
现在我尝试通过 grid-a-licious 显示它们jquery 网格插件。根据示例,当我想要附加它们时,我需要创建带有“item”类的 div 数组。所以我尝试了这段代码:
function createItems(data) {
var items = new Array;
$('.item', data).html().each(function() {
items.push($(this));
});
return items;
}
但是 html 代码进入控制台时出现错误:语法错误无法识别的表达式 哪里有问题?
最佳答案
不能在字符串上使用 .each。其次,您的选择器不会返回任何元素,因为 .item
是 data
中的顶级元素。
function createItems(data) {
var items = [];
$(data).each(function() {
items.push(this);
});
return items;
}
$(createItems(somedata)).doSomething();
甚至
function createItems(data) {
return $(data).map(function() {
return this;
}).get();
}
$(createItems(somedata)).doSomething();
或
$(somedata).doSomething();
关于javascript - 从ajax html响应创建jquery元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18277228/