(function( $ ) {
    $.fn.searchify = function() {
        return this.each(function() {
            $(this).autocomplete({
                source: $(this).data("search-url"),
                select: function (event, ui) {
                    if (select_url = $(this).data("select-url")) {
                        for (element in ui.item)
                            select_url = select_url.replace('\(' + element + '\)', ui.item[element]);

                        window.location.href = select_url;
                    } else {
                        $(this).prev().val(ui.item.id);
                    }
                }
            });
        });
    };
})( jQuery );

@@ -169,16 +169,268 @@
 -url%22),%0A
+                change: function (event, ui) %7B%0A                    if ( $(this).data('value') != $(this).prev().val() ) %7B%0A                        $(this).val('');%0A                        $(this).prev().val('');%0A                    %7D%0A                %7D,%0A
         
@@ -831,16 +831,74 @@
 em.id);%0A
+                        $(this).data('value', ui.item.id)%0A
         

Add worflow validation to prevent user replacement assumptions