jQueryMobile - SimpleDialog
A Popup Dialog Box for jQueryMobile
SimpleDialog aims to be a replacement for javascript dialog(), written for jQM.
- Overview
- Intro & Features
- Download & Use
- Methods and Events
- Full Options Matrix
- Demos
- Boolean / Button Mode
- String / Input Mode
- Raw HTML Mode
String Input Mode
This shows the simplest form of string input.
You have entered:
Open Dialog HTML<p>You have entered: <span id="dialogoutput"></span></p> <a href="#" id="dialoglink" data-role="button">Open Dialog</a>jQuery
$(document).delegate('#simplestring', 'click', function() {
$(this).simpledialog({
'mode' : 'string',
'prompt' : 'What do you say?',
'buttons' : {
'OK': {
click: function () {
$('#dialogoutput').text($('#dialoglink').attr('data-string'));
}
},
'Cancel': {
click: function () { },
icon: "delete",
theme: "c"
}
}
})
})
String Password Input Mode
This shows getting a password input.
You have entered:
Open Dialog HTML<p>You have entered: <span id="dialogoutput"></span></p> <a href="#" id="dialoglink" data-role="button">Open Dialog</a>jQuery
$(document).delegate('#simplepass', 'click', function() {
$(this).simpledialog({
'mode' : 'string',
'prompt' : 'Password?',
'inputPassword': true,
'buttons' : {
'OK': {
click: function () {
$('#dialogoutput').text($('#dialoglink').attr('data-string'));
}
},
'Cancel': {
click: function () { },
icon: "delete",
theme: "c"
}
}
})
})
Adding to a Select Box
This shows how to use SimpleDialog to add to a select box.
<div data-role='fieldcontain'>
<label for='vendor'>Some Select Menu, using jQM styles</label>
<select data-native-menu="false" name='stringselect' id='stringselect' >
<option data-placeholder='true'>Choose one...</option>
<option data-addoption='true' value='0'>Add New...</option>
<option value='Example Vendor'>Example Vendor</option>
<option value='Another Example Vendor'>Another Example Vendor</option>
</select>
</div>
jQuery
$(document).delegate('#stringselect', 'change', function(e) {
var self = this;
$(self+':selected:not([data-placeholder])').each(function(){
if ( $(this).attr('data-addoption') ) {
$(self).simpledialog({
'mode' : 'string',
'prompt' : 'Add New Option',
'useDialogForceFalse' : true,
'buttons' : {
'Yes, Add' : {
click: function () {
thisopt = $(self).attr('data-string');
$('<option value="'+thisopt+'" selected="selected">'+thisopt+'</option>').appendTo($(self));
$(self).selectmenu('refresh', true);
return true; }
},
'Cancel' : {
click: function () { $(self).selectmenu('open'); },
icon: "delete"
}
}
});
}
});
});
