jQuery Insert alphabetically into a List

Sam Deering
Share

This function will insert items into an order alphabetically (assuming it contains letters). Initially design to make a smooth single page load/save feature that sorted everything in drop down lists, you guessed it, alphabetically. Can simply be modified to work in any sort of layout (ordered lists was just easier for the example).

function insert(){
    var name = $("input[name='insertvalue']").val();
    if(name!=''){
        var toinsert = true;
        $("ol.thelist > li").each(function(){
            var item = $(this).html();
            if(name.toUpperCase() < item.toUpperCase()){
                if(toinsert){
                    $(this).before('
  • '+name+''); toinsert = false; } } }); if(toinsert){ $("ol.thelist").append('
  • '+name+'
  • '); } $("input[name='insertvalue']").val('') } }