src/aria/widgets/controllers/SelectController.js
function (displayIdx) {
                var dataModel = this._dataModel;
                var options = dataModel.listContent;
                if (options.length === 0) {
                    displayIdx = -1;
                } else if (displayIdx >= options.length) {
                    displayIdx = options.length - 1;
                } else if (displayIdx < 0) {
                    displayIdx = 0;
                }
                if (displayIdx == -1) {
                    jsonUtils.setValue(dataModel, 'selectedIdx', -1);
                    jsonUtils.setValue(dataModel, 'displayIdx', -1);
                    jsonUtils.setValue(dataModel, 'displayText', '');
                    jsonUtils.setValue(dataModel, 'value', null);
                } else {
                    jsonUtils.setValue(dataModel, 'selectedIdx', displayIdx);
                    jsonUtils.setValue(dataModel, 'displayIdx', displayIdx);
                    jsonUtils.setValue(dataModel, 'displayText', options[displayIdx].label);
                    jsonUtils.setValue(dataModel, 'value', options[displayIdx].value);
                }
            }
function (displayIdx) {
                var dataModel = this._dataModel;
                var options = dataModel.listContent;
                if (options.length === 0) {
                    displayIdx = -1;
                } else if (displayIdx >= options.length) {
                    displayIdx = options.length - 1;
                } else if (displayIdx < 0) {
                    displayIdx = 0;
                }
                if (displayIdx == -1) {
                    jsonUtils.setValue(dataModel, 'selectedIdx', -1);
                    jsonUtils.setValue(dataModel, 'displayIdx', -1);
                    jsonUtils.setValue(dataModel, 'displayText', '');
                    jsonUtils.setValue(dataModel, 'value', null);
                } else {
                    jsonUtils.setValue(dataModel, 'selectedIdx', displayIdx);
                    jsonUtils.setValue(dataModel, 'displayIdx', displayIdx);
                    jsonUtils.setValue(dataModel, 'displayText', options[displayIdx].label);
                    jsonUtils.setValue(dataModel, 'value', options[displayIdx].value);
                }
            }
function ( displayIdx ) { var dataModel = this . _dataModel ; var options = dataModel . listContent ; if ( options . length === 0 ) { displayIdx = - 1 ; } else if ( displayIdx >= options . length ) { displayIdx = options . length - 1 ; } else if ( displayIdx < 0 ) { displayIdx = 0 ; } if ( displayIdx == - 1 ) { jsonUtils . setValue ( dataModel , 'selectedIdx' , - 1 ) ; jsonUtils . setValue ( dataModel , 'displayIdx' , - 1 ) ; jsonUtils . setValue ( dataModel , 'displayText' , '' ) ; jsonUtils . setValue ( dataModel , 'value' , null ) ; } else { jsonUtils . setValue ( dataModel , 'selectedIdx' , displayIdx ) ; jsonUtils . setValue ( dataModel , 'displayIdx' , displayIdx ) ; jsonUtils . setValue ( dataModel , 'displayText' , options [ displayIdx ] . label ) ; jsonUtils . setValue ( dataModel , 'value' , options [ displayIdx ] . value ) ; } }
Set the display index in the data model and update other dependent values.
@param {Number} displayIdx index (in listContent) of the new display text
@protected
Set the display index in the data model and update other dependent values .