Test queue / dequeue

by André Masson

HTML

<input id="bacon" type="text" value="" name="testinput">
<input id="egg" type="hidden" value="" name="testhidden">
                
<button id="test" type="button">Test</button>
<button id="displayHiddenFieldValue" type="button">Display hidden value</button>

JavaScript

(function($) {

    var updateFieldAndTriggerChange = function(id, newValue) {
        alert("updateFieldAndTriggerChange");

        $(id).queue(function() {
            $(id).on("forceUpdate", function(){
                alert('a');
                $(id).val(newValue);							
            });
        }).dequeue();
        
        $(id).queue(function() {
                alert('b');
            $(id).trigger("forceUpdate");
        }).dequeue();
        
        $(id).queue(function() {
            alert('c');
            $(id).change();
        }).dequeue();
    
    };
    
    Global = {
        updateFieldAndTriggerChange	: updateFieldAndTriggerChange
    };
    
    $( document ).ready(function() {
        $("#displayHiddenFieldValue").click(function() {
            alert($("#egg").val());
        });
        
        $("#test").click(function() {
            Global.updateFieldAndTriggerChange("#bacon", "allo");
            Global.updateFieldAndTriggerChange("#egg", "egg");
        });
    });
    
})(jQuery);