我从Google电子表格中提取一些json数据并使用以下内容显示它:
$(entry).each(function(){
// Column names are section, subcat, heading,description
$('.results ul').prepend('<li data-section="'+this.gsx$section.$t+'" class="'+this.gsx$subcat.$t+'"><span>'+this.gsx$subcat.$t+'</span><h2>'+this.gsx$heading.$t+'</h2><p>'+this.gsx$description.$t+'</p></li>');});
html输出是这样的:
描述在这里
Category2描述在这里
Category3描述在这里
Category4描述在这里
我想要做的是按照数据属性分组li - section。
输出如下:
<ul>
<li>
<h1>Section 1</h1>
<ul>
<li data-section="Section 1" class="Category1">
<span>Category1</span>
<h2>Access Services</h2>
<p>description goes here</p>
</li>
</ul>
</li>
<li>
<h1>Section 2</h1>
<ul>
<li data-section="Section 2" class="Category2">
<span>Category2</span>
<h2>Community supports</h2>
<p>description goes here</p>
</li>
<li data-section="Section 2" class="Category3">
<span>Category3</span>
<h2>Family responsibility</h2>
<p>description goes here</p>
</li>
</ul>
</li>
<li data-section="Section 3">
<h1>Section 3</h1>
<ul>
<li data-section="Section 3" class="Category4">
<span>Category4</span>
<h2>Free resources</h2>
<p>description goes here</p>
</li>
</ul>
</li>
Img of above html output 我在Stack上找到的大多数解决方案更多的是关于&#39;排序&#39;没有&#39;分组和排序&#39;。任何指导都表示赞赏。
我尝试过以下但不太合适:
$('.results li').each(function(){
$('.results li[data-section="'+this.gsx$section.$t+'"]').insertAfter($(this)).wrapAll('<ul />');
});