Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

angularUI ui-select2 directive not working

I've been banging my head against the wall with this, so I've reduced it to the bare minimum:

index.html:

<html lang="en" ng-app="myApp">
    <body ng-controller="main">

        <select ui-select2>
            <option>12451</option>
            <option>23435</option>
            <option>3456</option>
        </select>

        <!-- Scripts loaded here. See the plunker -->

    </body>
</html>

app.js:

angular
    .module('myApp', ['ui'])
    .controller('main', function (){});

Here's the link to the Plunker: http://plnkr.co/edit/kXnHPzBt7apRc7EivLp8?p=preview

I think I'm doing it all right, but it just refuses to initialize the select2.

Here's the error I get:

Object [[object HTMLSelectElement]] has no method 'is'

Here's a screenshot of the error:

enter image description here

What am I doing wrong here?

like image 600
MegaHit Avatar asked Dec 18 '12 02:12

MegaHit


1 Answers

You need to load jQuery before AngularJS and apparently select2.js before Angular-ui

The following order works fine

<script src="jquery.min.js"></script>          
<script src="select2.js"></script>
<script src="angular.js"></script>  
<script src="angular-ui.js"></script>

Check the plunker: http://plnkr.co/edit/sAGfzmNdykEnqlH40gNf?p=preview


Check this other answer: Angular UI Select2 in the Bootstrap Navigation Bar

like image 180
jaime Avatar answered Oct 02 '22 12:10

jaime