From b4ae26d24f75886c3d5f6fc4f00e176f09705a13 Mon Sep 17 00:00:00 2001 From: jlukic Date: Mon, 6 Jan 2014 18:08:33 -0500 Subject: [PATCH] Dropdown: adds ability to restore default value, text #492 --- src/modules/dropdown.js | 44 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 2 deletions(-) diff --git a/src/modules/dropdown.js b/src/modules/dropdown.js index b8b52425b..a8b242204 100755 --- a/src/modules/dropdown.js +++ b/src/modules/dropdown.js @@ -61,6 +61,7 @@ $.fn.dropdown = function(parameters) { initialize: function() { module.debug('Initializing dropdown', settings); + module.save.defaults(); module.set.selected(); if(hasTouch) { @@ -361,6 +362,43 @@ $.fn.dropdown = function(parameters) { } }, + restore: { + defaults: function() { + module.restore.defaultText(); + module.restore.defaultValue(); + }, + defaultText: function() { + var + defaultText = $module.data(metadata.defaultText) + ; + module.debug('Restoring default text', defaultText); + module.set.text(defaultText); + }, + defaultValue: function() { + var + defaultValue = $module.data(metadata.defaultValue) + ; + if(defaultValue !== undefined) { + module.debug('Restoring default value', defaultValue); + module.set.selected(defaultValue); + module.set.value(defaultValue); + } + } + }, + + save: { + defaults: function() { + module.save.defaultText(); + module.save.defaultValue(); + }, + defaultValue: function() { + $module.data(metadata.defaultValue, module.get.value() ); + }, + defaultText: function() { + $module.data(metadata.defaultText, $text.text() ); + } + }, + set: { text: function(text) { module.debug('Changing text', text, $text); @@ -820,8 +858,10 @@ $.fn.dropdown.settings = { }, metadata: { - text : 'text', - value : 'value' + defaultText : 'defaultText', + defaultValue : 'defaultValue', + text : 'text', + value : 'value' }, selector : {