The logic in the change() event handler is not being run when the value is set by val(), but it does run when user selects a value with their mouse. Why is this?
<select id="single">
    <option>Single</option>
    <option>Single2</option>
</select>
<script>
    $(function() {
        $(":input#single").change(function() {
           /* Logic here does not execute when val() is used */
        });
    });
    $("#single").val("Single2");
</script>
 
     
     
     
     
     
     
     
     
     
     
     
     
    