Skip to main content

Jquery Mobile Form - Select Menus Part II

    In part II of this tutorial on creating select menus using Jquery Mobile, we will discuss some customization techniques like overriding the default native OS select menu or disabling an option or creating a multi-select select box. It is advisable that you take a look at part I of this tutorial where we have discussed the basics of the select menu. In case you have decided to proceed with this part, then we are ready to take a look at the code that follows.



    In the example code above, you will observe 2 different selects. We will be discussing the following data attributes and HTML5 properties that will enhance the select menus further.

1. data-native-menu="false"
2. data-placeholder="true"
3. disabled
4. multiple

    As seen in the first implementation, by adding the data attribute data-native-menu="false" we can simply override the native OS menu control and display a pop-up containing the options in a listview. If there are a large number of options, the framework will automatically create a new "page" populated with a standard listview for the options.

    To create a placeholder for the select we just need to include a data attribute data-placeholder="true" to an option which holds the placeholder text. This option will then be styled accordingly and will not be selectable. In case you want to disable an option just add disable to that option and that option will be styled as a disabled listview. All the above three things are part of the first implementation in the above example.

    Lets now take a look at how to create a multi select select box. It is as simple as it sounds a big task. Just add keyword multiple to your select element (as seen in the second implementation) and the framework will style each of your option as a listview with a checkbox and you can select multiple options. Each of the options selected will be populated as comma seperated list on the custom select button. To top this off Jquery Mobile framework will aslo add a count bubble on the select button indicating how many options are selected.

    Hope you have enjoyed this post and the other form elements tutorials. Drop a line in case this has helped you, or if you have any concerns, comments on the post or the series of examples that I have shared so far. You can also check out the comprehensive list of examples on Jquery Mobile listview. Till next time, keep sharing - Sharing is Caring.

Comments

Recommended for You

ES6 101 - Class

Spatial Unlimited changes to The UI Dev After being hosted on blogger 😣 for the last 6 years 📆, this page has finally been moved to Github.io This means a few things for you, dear reader! You will be redirected to the new page shortly! ⏩ ⏩ ⏩ Once crapy HTML is now better looking Markdown ! 😍 😍 The entire blog is a Github repo ! 😍 😍 Spatial Unlimited is now The UI Dev 😍 😍

CSS - Counter-increment and counter-reset

Today we will take a look at a couple of CSS properties that are usually used together but not very frequently used. We will be talking about the counter-increment and counter-reset properties. As the name suggests counter-increment and counter-reset definitely have something to do with counters. Let's take a look at the example below which will clearly illustrate the usage of these 2 properties. The implementation is very clear and straight-forward. The only question that remains now, can these CSS properties replace the ordered list (ol-li) HTML code? Do let me know your comments and feedback. Would you use these CSS properties against the standard ol-li structure?

Side-scrolling web pages issue with Jquery Mobile - Issue #5748

    While developing a Jquery mobile based application, I came across a issue that is observed only on the iOS 6 devices and Android 4.2.2 devices.     What is the issue?         Web pages are side scrolling on iOS6 and Android 4.2.2 devices.     How did I debug the issue?         This bug was in our applications bug tracker for a long time and since I am the lone front-end developer the project that I am working on, my manger was pushing me to close this bug quickly. I had used the perfect mobile meta tag and still the web pages were side-scrolling. None of my divs had width that was going beyond the device widths and still there was this issue. That day, I decided to break down my HTML to pieces, and tested each piece on the dreadful iOS 6 device. I came down to a textbox that had some placeholder text in it and there it was, the issue was glaring me in my face. ...

Removing overlays

    "Overlays"....!!! What is this now! Never heard or used it before? You might immediately say "NO"...But, actually all of you have already seen what an overlay is and you have also used it! Now you would say "When!?!?" Well, all of the markers, polylines, polygons that you have created are overlays. Overlays are objects on the map that are tied to latitude/ longitude coordinates, so they move when you drag or zoom the map. Overlays reflect objects that you add to the map to designate points, lines, areas or collection of objects.     Till now we have seen how to create an overlay. In today's example we will see how to remove an overlay. In this example we will create markers on click. But the difference will be that when you create a new marker, the earlier one will disappear from the map. So at any given time there would only be one single marker on the map! Note that removing the marker does not delete the overlay; it simply removes the overlay...

KML Layer Example

         Until now, we have covered various examples involving markers, polylines, polygons, i.e. creating overlays. We have also seen other examples to remove overlays! We will now move on to some other concepts. Today we will have a look at what KML is and how to create a KML layer!          Let us first understand what KML is and why is it necessary. KML stands for Keyhole Markup Language which is an XML schema for expressing geographic annotation and visualisation within 2D maps and 3D Earth browsers. The KML file specifies a set of features (place marks, images, polygons, 3D models, textual descriptions, etc.) for display in Google Earth, Maps and Mobile, or any other 3D Earth browser (geobrowser) implementing the KML encoding. Each place always has a latitude and a longitude. Other data can make the view more specific, such as tilt, heading, altitude, which together define a "camera view". ...