如何拆分<ul>的每个不同的variables

我想分割<ul>每个不同的variable_name

我试图在if语句中插入ul,但它不会工作。 是否可以把ul放在if语句之外?

让我们说我的variable_name = [dog,dog,dog,cat,cat,mouse,mouse,mouse,mouse];

和我想要的输出是:

 <ul> <li> dog </li> <li> dog </li> <li> dog </li> </ul> <ul> <li> cat </li> <li> cat </li> </ul> <ul> <li> mouse </li> <li> mouse </li> <li> mouse </li> <li> mouse </li> Code: <% for(var j=0;j<array4.length;j++) { %> <% if(array4[j].input_type == "radio") { %> <li class="list-group-item radio-choice" id="chk_<%=array4[j].variable_name%>" value=""><%=array4[j].answer_text%> </li> <%} }%> 

在节点中,你可以这样做(直接在模板中,例如eJS):

 <% var variable_name = ['dog','dog','dog','cat','cat','mouse','mouse','mouse','mouse']; var uls = []; variable_name.forEach(function(item) { uls[item] = uls[item] ? ++uls[item] : 1; }); for(var key in uls) { %><ul><% for (var i=0; i<uls[key]; i++) { %><li><%= key %></li><% } %></ul><% } %> 

你可以用这样的控制台日志来testing这个:

 var variable_name = ['dog','dog','dog','cat','cat','mouse','mouse','mouse','mouse']; var uls = []; variable_name.forEach(function(item) { uls[item] = uls[item] ? ++uls[item] : 1; }); for(var key in uls) { console.log('<ul>'); for (var i=0; i<uls[key]; i++) { console.log('<li>'+key+'</li>'); } console.log('</ul>'); }