简体   繁体   中英

angular-ui select2 initSelection not getting called

I have an angular-ui select2 component on my page. It works fine when the user types something in (it uses ajax to load in the data).

But the initSelection function never gets called. Here's the configuration object I pass into the select2

{
    multiple: true,
    minimumInputLength: 1,
    tokenSeparators: [",", " "],
    createSearchChoice: function (term) {
        return term;
    },
    width: 'resolve',
    ajax: {
        url: '...',
        method: 'GET',
        quietMillis: 100,
        data: function (term, page) {
            ...
        },
        results: function (data, page) {
            ...
        }
    },
    initSelection: function (element, callback) {
        console.log('initSelection');
        return $.ajax({
            url: "...",
            type: "GET",
            data: {
                ...
            },
        }).done(function(data) {
            console.log(data);
            return callback(data);
        });
    }
};

"initSelection" never gets logged to the console. Why isn't initSelection getting called?

initSelection is only called when there is initial input to be processed (see blue box just above here - the closest place to link to, I'm afraid). I suspect this may be your problem from the way the question is worded.

I'm able to do selected value as Edit time using InItSelection in Angular Js.

$scope.partInitSelection = function (element, callback) {
        var resultArray = [];
        resultArray.push({ id: "1", text: "hi" });
        $scope.HospitalizationView.HospitalName = resultArray[0];
        callback(resultArray[0]);
    };

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM