WordPress.org

Make WordPress Core

Ticket #16190: 16190.diff

File 16190.diff, 1.2 KB (added by koopersmith, 7 years ago)
  • wp-admin/js/list-table.dev.js

     
    1414                this.$tbody = $('#the-list, #the-comment-list');
    1515        },
    1616
     17        /**
     18         * Simulates form.reset() for all input, select, and textarea elements
     19         * within a provided context.
     20         */
    1721        reset: function( context ) {
    18                 context = $( context );
     22                context = $(context);
     23
    1924                $('input', context).each( function(){
    2025                        this.value = this.defaultValue;
    2126                        this.checked = this.defaultChecked;
    2227                });
    23                 $('option', context).each( function(){
    24                         this.selected = this.defaultSelected;
     28
     29                $('select', context).each( function(){
     30                        var options = $('option', this),
     31                                anySelected = false;
     32                       
     33                        options.each( function(){
     34                                this.selected = this.defaultSelected;
     35                                anySelected = anySelected || this.defaultSelected;
     36                        });
     37                       
     38                        // If no options are selected within a single-select dropdown,
     39                        // select the first element by default.
     40                        if ( ! this.multiple && ! anySelected )
     41                                options[0].selected = true;
    2542                });
     43
    2644                $('textarea', context).each( function(){
    2745                        this.value = this.defaultValue;
    2846                });