angularjsfont-awesomeangularjs-select

Add font-awesome icon to option in select


Is it possible to add font-awesome icon to<option> in <select>?

  <body ng-app>
    <i class="fa fa-camera-retro"></i> fa-camera-retro<br>
    <select ng-model="choice" class="fa">
      <option value="">Choose</option>
      <option value="icon camera">icon camera</option>
      <option value="icon bell">icon bell</option>
      <option value="icon bicycle">icon bicycle</option>
    </select>

Solution

  • Since font-awesome icons are fonts, they can be added to options by Unicode:

    <script src="//unpkg.com/angular/angular.js"></script>
    <link rel="stylesheet" href="//unpkg.com/font-awesome/css/font-awesome.css">
      <body ng-app>
        <i class="fa fa-camera-retro"></i> fa-camera-retro<br>
        <select ng-model="choice" class="fa">
          <option value="">Choose</option>
          <option value="&#xf030; camera">&#xf030; camera</option>
          <option value="&#xf0f3; bell">&#xf0f3; bell</option>
          <option value="&#xf206; bicycle">&#xf206; bicycle</option>
        </select>
        <br>
        Choice = <span class="fa">{{choice}}</span>
        <br><span class="fa">&#xf030;-&#xf0f3;-&#xf206;</span>
      </body>

    The DEMO on PLNKR

    The Font-Awesome Cheatsheet