【发布时间】:2013-04-29 23:09:30
【问题描述】:
我有一个 HTML dom 元素存储在一个变量中。 HTML 是从 handlebar.js 和使用 jQuery 的 JSON 数据生成的。我需要根据 CSV 中的值对其进行排序
var html = "<div id = 'qual'>Qual</div>
<div id = 'exp'>Exp</div>
<div id = 'ExcludeFromSorting'></div>
<div id = 'edu'>Edu</div>
<div class='clear'></div>
<div id = 'int'>Int</div>
<div id = 'ref'>Ref</div>
<div id = 'img'>Img</div>
<div id = 'obj'>Obj</div>";
HTML 通常很复杂,通常有 200 多行代码。 html 将有很多带有或不带有 id 的 div 标签、嵌套的 div 等。我在这里使用了一个简单的符号。
我在 csv 变量中有排序顺序
var sortorder = "obj,exp,qual,edu,int,ref,img";
但是具有上述 id 的 div 标签将明确存在于生成的 HTML 中(var html 将明确包含所有具有相应 id 的 div。)为简单起见,var html 可能有超过 100 个 div,但这 7 个 div
<div id = "qual">Qual</div>
<div id = "exp">Exp</div>
<div id = "edu">Edu</div>
<div id = "int">Int</div>
<div id = "ref">Ref</div>
<div id = "img">Img</div>
<div id = "obj">Obj/div>
根据 var sortorder 将明确存在于 var html 中的某个位置以打乱顺序。
我需要的是相同的 var html,但那些 div 是根据传递的值排序的。 var html 中的其他 div 不应该受到影响。
我想我已经足够简短地解释我的要求了,我已经发布了这个问题
How to sort div elements according to id from a CSV list using jQuery?
但这种方法并非一直有效。
【问题讨论】:
标签: jquery handlebars.js jquery-ui-sortable sorting