Framework7 - Smart Select Search Bar



Description

Smart select searches the elements by using search bar and enable it by setting the data-searchbar class to true.

Example

The following example allows to select the item from the list using select search bar in Framework7 −

<!DOCTYPE html>
<html>

   <head>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1, 
         maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
      <meta name = "apple-mobile-web-app-capable" content = "yes" />
      <meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
      <title>Smart Select Search Bar</title>
      <link rel = "stylesheet" 
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
      <link rel = "stylesheet" 
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
   </head>

   <body>
      <div class = "views">
         <div class = "view view-main">
            
            <div class = "navbar">
               <div class = "navbar-inner">
                  <div class = "left"> </div>
                  <div class = "center sliding">Smart Select with Search Bar</div>
                  <div class = "right"> </div>
               </div>
            </div>
            
            <div class = "pages navbar-through">
               <div data-page = "home" class = "page">
                  <div class = "page-content">
                     <div class = "list-block">
                        <ul>
                           <li>
                              <a href = "#" data-searchbar = "true" data-searchbar-placeholder = "Search Countries" class = "item-link smart-select">
                              
                                 <select name = "countries">
                                    <option value = "India" selected>India</option>
                                    <option value = "Newz = Zealnad">New Zealand</option>
                                    <option value = "Srilanka">Srilanka</option>
                                    <option value = "WestIndies">West Indies</option>
                                    <option value = "China">China</option>
                                 </select>
                                 
                                 <div class = "item-content">
                                    <div class = "item-inner">
                                       <div class = "item-title">Countries</div>
                                    </div>
                                 </div>
                              </a>
                           </li>
                           
                           <li>
                              <a href = "#" data-searchbar = "true" data-searchbar-placeholder = "Search Sports" class = "item-link smart-select">
                              
                                 <select name = "sports">
                                    <option value = "Cricket">Cricket</option>
                                    <option value = "Hockey">Hockey</option>
                                    <option value = "Football">Football</option>
                                    <option value = "Volleyball" selected>Volleyball</option>
                                    <option value = "Rugby">Rugby</option>
                                 </select>
                                 
                                 <div class = "item-content">
                                    <div class = "item-inner">
                                       <div class = "item-title">Sports</div>
                                    </div>
                                 </div>
                              </a>
                           </li>
                           
                           <li>
                              <a href = "#" data-searchbar = "true" data-searchbar-placeholder = "Search Books" class = "item-link smart-select">
                              
                                 <select name = "books">
                                    <option value = "EyesDragon" selected>Eyes of the Dragon</option>
                                    <option value = "Winter">Winter Wedding</option>
                                    <option value = "DarkWood" selected>In a Dark, Dark Wood</option>
                                    <option value = "FarAway" selected>Far and Away</option>
                                    <option value = "WasteLands">The Waste Lands</option>
                                 </select>
                                 
                                 <div class = "item-content">
                                    <div class = "item-inner">
                                       <div class = "item-title">Books</div>
                                    </div>
                                 </div>
                              </a>
                           </li>
                        </ul>
                     </div>
                  </div>
                  
               </div>
            </div>
         </div>
      </div>
      
      <script type = "text/javascript" 
         src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
         
      <script>
         // here initialize the app
         var myApp = new Framework7 ({
            animateNavBackIcon:true
         });

         // If your using custom DOM library, then save it to $$ variable
         var $$ = Dom7;

         // Add the view
         var mainView = myApp.addView('.view-main', {
            // enable the dynamic navbar for this view
            dynamicNavbar: true
         });
      </script>
   </body>

</html>

Output

Let us carry out the following steps to see how the above given code works −

  • Save the above given HTML code as smart_select_with_search_bar.html file in your server root folder.

  • Open this HTML file as http://localhost/smart_select_with_search_bar.html and the output is displayed as shown below.

  • The output shows the use smart-select class to display the smart select layout to view a list inside the select element along with a search bar.

  • When you click on any particular element from the list, you can view another list inside that selected element along with the search bar where you can select only one option and if you want to search any particular element from the list, you can enter element name in the search bar.

framework7_forms.htm
Advertisements