Skip to main content

Jquery Mobile Form - Checkboxes

    Checkboxes - popularly used in forms for multi-option selection, pose a problem in the mobile web world! The checkboxes being so small as they are, reduce the touch area and it becomes really difficult for selection. Jquery Mobile styles these checkboxes in such a way that they become touch friendly and gel with their overall framework design. Jquery Mobile styles the label for the checkboxes so that they are larger and clickable. A custom set of icons representing the checkboxes is added to provide additional visual feedback.

    The checkboxes can be used singularly or in a vertical group or can be even grouped horizontally. These checkboxes can be used along with data-mini="true" too, which renders the checkboxes in a smaller size. We will take a look at all this in the example that follows.


    In the first implementation you will see, 3 singular checkboxes which are not attached to each other like in the second implementation. These 2 implementations differ by the usage of the "fieldset" and the data-role="controlgroup". Adding the fieldset with data-role="controlgroup" around the input tags will group the checkboxes together giving them the right visual grouping. Using the data-mini="true" attribute with fieldset will render smaller sized checkboxes as seen in the third implementation.

    In the next implementation, we have the label and the checkboxes control group aligned next to each other. To achieve this you need to wrap your fieldset with dat-role="controlgroup" within a div with data-role="fieldcontain". All of these 4 implementation have a vertical grouping of checkboxes.

    In the next and final implementation of checkboxes we will see how to create a horizontal set of checkboxes  This again is pretty simple like all the above implementations. You need to create a fieldset with data-role="controlgroup" and another data attribute data-type="horizontal". This data-type attribute will inform JQM to render the checkboxes in a horizontal group.

    For the sake of accessibility, jQuery Mobile requires that all form elements be paired with a meaningful label. To hide labels in a way that leaves them visible to assistive technologies. — for example, when letting an element's placeholder attribute serve as a label — apply the helper class ui-hidden-accessible to the label itself. While the label will no longer be visible, it will be available to assisitive technologies such as screen readers.

    Hope this post has been informative to you and helps you use 
checkboxes effectively in your next Jquery Mobile based application. Drop a comment to let me know what you feel about this post as well as the earlier series on Jquery Mobile listview and Jquery Mobile form elements. Share the post if is has helped you, so that maximum developers benefit from this one.

Recommended for You

Difference between word-break: break-all versus word-wrap: break-word

The 2 CSS properties word-break: break-all and word-wrap: break-word appear to work in the same way or generate the same output, but there is a slight difference between the 2 and we will be discussing these differences today.



    Take a look at the example above. The difference is quite evident, however I will try to explain it further.

word-break: break-all Irrespective of whether it’s a continuous word or many words, break-all breaks them up at the edge of the width limit even within the characters of the same word
word-wrap: break-word This will wrap long words onto the next line.break-word adjusts different words so that they do not break in the middle.
    So if you have many fixed-size spans which get content dynamically, you might just prefer using word-wrap: break-word, as that way only the continuous words are broken in between, and in case it’s a sentence comprising many words, the spaces are adjusted to get intact words (no break within a word).     In case you want to exp…

Geodesic, Draggable Onclick Polygon

After creating a simple polygon and then creating an on-click polygon, we will today see how to create a polygon which can be changed, altered, dragged; basically edited on the fly. We will also cover the geodesic polygon in this example itself. If you want to read and understand more about what "geodesic" is, read this post.

    Nothing exceptional about the code that I think needs explanation! You can create a geodesic polygon which can be edited on the fly. Click, hold and drag any marker, and the two polylines connected by this marker will change accordingly. By clicking on the marker, that marker would disappear, and the polygon will reform itself! Here is today's code.


    You can copy the above code in a text file and save it with .html extension. Click on this file; it will open in your default browser and you will see an exciting map in action! The output of the above code appears as seen in the result section above! If you have any doubts or queries regard…

Onclick polygon

Yesterday we had a look at a simple polygon example. But that example was not exciting as it was all hard-coded with no user interaction and which means no fun! Today's example will deal with creating a polygon on the fly, i.e. an on-click polygon in action!

    The code for creating a polygon is very much similar to creating a polyline! The only difference is that you need to replace "Polyline" by "Polygon" in such examples. Let's head on to our code.


    The output of the above code can be viewed in the result section above. If you have any doubts or queries regarding the above code then please comment here or feel free to drop me a mail! Till then, happy mapping!

jQuery Mobile's Next Big Step

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 😍 😍


Jquery Mobile - Readonly listview

The Jquery Mobile Listview that is used generally used to link each list item to a new page in the application or to link that list item to another list. However, it is not always necessary to have a linked list. Sometime we need to display a list that does not have to be linked to anything else.

    Using Jquery Mobile, we can have non-interactive, read-only listviews in our web pages. This list can be generated using the ordered or un-ordered lists that don't have any linked items, i.e. we basically do not include any anchor tags within our list item tags. This will render the listview as a non-interactive, read-only listview.

    Take a look at the JsFiddle below. The code and the actual result will give you a better picture of how you can implement the non-interactive, read-only listviews.



    Hope you find this example useful. Please drop a comment if you face any problems or have any queries. I would be happy to help and learn more. You can take a look at more examples …