custom checkbox in options

This commit is contained in:
2015-04-26 18:08:30 +02:00
parent 60dfaae271
commit 4f8956f09b
9 changed files with 73 additions and 22 deletions

View File

@@ -72,6 +72,37 @@ function addOption(iArrayId, optInfo, $Box)
case databap.consts.opt_type_pass:
$Option.append($('<input>', {type:'password', id:optNameId, name:optNameId, value:optInfo.user_value, 'class':'round'}));
break;
case databap.consts.opt_type_checkbox:
var $Select = $('<select>', {id:optNameId, name:optNameId, 'class':'hide'}).appendTo($Option);
$.each
(
optInfo.select,
function(selectId, selectName)
{
$Select
.append($('<option>', {value:selectId})
.prop('selected', (selectId==optInfo.user_value_id))
.text(selectName));
}
);
$Option.append(
$('<span>', {'class':'checkbox clickable'})
.data('option_id', optNameId)
.data('on', optInfo.user_value)
.data('options', optInfo.select_inv)
.append($('<i>', {'class':'fa fa-c-'+(optInfo.user_value=="1"?'on':'off')}))
.click(function()
{
$This = $(this);
var sNewValue = !$This.data('on');
$This.data('on', sNewValue);
$('#'+$This.data('option_id')).val($This.data('options')[sNewValue?1:0]);
$This.find('.fa')
.removeClass('fa-c-on fa-c-off')
.addClass('fa-c-'+(sNewValue?'on':'off'));
})
);
break;
case databap.consts.opt_type_select:
var $Select = $('<select>', {id:optNameId, name:optNameId, 'class':'round'}).appendTo($Option);
$.each
@@ -98,7 +129,7 @@ function validate_options()
databap.getMainElem('#options_form'),
function(result)
{
databap.addSuccessIcon();
self.addBufferIcon();
location.reload();
},
true