sorting - mootools json filter with groups -


i have json string. looks like:

  var data= [{"name":"name1","value":"value1","group":"group1","order":"1"},       {"name":"name2","value":"value2","group":"group1","order":"2"},       {"name":"name3","value":"value3","group":"group1","order":"3"},       {"name":"name4","value":"value4","group":"group2","order":"4"},       {"name":"name5","value":"value5","group":"group2","order":"5"},       {"name":"name6","value":"value6","group":"group3","order":"6"},       {"name":"name7","value":"value7","group":"group4","order":"7"},       {"name":"name8","value":"value8","group":"group4","order":"8"},       {"name":"name9","value":"value9","group":"group4","order":"9"}] 

is possible convert html output using mootools javascript library sorting order:

 <h2>group1</h2>   <div>name1 ... value1</div>  <div>name2 ... value2</div>  <div>name3 ... value3</div>  <h2>group2</h2>   <div>name4 ... value4</div>  <div>name5 ... value5</div>  <h2>group3</h2>   <div>name6 ... value6</div>  <h2>group4</h2>   <div>name7 ... value7</div>  <div>name8 ... value8</div>  <div>name9 ... value9</div> 

this sorting function:

data.sort(function(a,b){    return parseint(a.order) > parseint(b.order); }); 

my render function follow:

var html_data = ''; data.each(function(d){              html_data += tmpl.render("data", d);             });   container.set('html', html_data); 

but don't know how group it.

thanks!

just test group previous value in each loop:

var html_data = ''; var group = ''; data.each( function( item, index ) {     if ( group !== item.group ) {         html_data += '<h2>'+item.group+'</h2>';     }     html_data += '<div>'+item.name+'...'+item.value+'</div>';     group = item.group; });  container.set( 'html', html_data ); 

Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -