Skip to content

Commit

Permalink
allow number or boolean as array input. When Help is set to None, hid…
Browse files Browse the repository at this point in the history
…e help on focus
  • Loading branch information
compsult committed Aug 30, 2018
1 parent b22e398 commit 91228af
Show file tree
Hide file tree
Showing 16 changed files with 227 additions and 106 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## MenuOptions [![Build Status](https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-10)](https://travis-ci.org/compsult/MenuOptions) [![Sauce Test Status](https://saucelabs.com/buildstatus/compsult)](https://saucelabs.com/u/compsult) [![Read The docs](https://readthedocs.org/projects/pip/badge/?version=latest)](http://menuoptions.readthedocs.org/en/latest/) ##
## MenuOptions [![Build Status](https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-11)](https://travis-ci.org/compsult/MenuOptions) [![Sauce Test Status](https://saucelabs.com/buildstatus/compsult)](https://saucelabs.com/u/compsult) [![Read The docs](https://readthedocs.org/projects/pip/badge/?version=latest)](http://menuoptions.readthedocs.org/en/latest/) ##

#### Input masks and multi-column autocomplete combined

Expand Down
25 changes: 16 additions & 9 deletions dist/js/jquery.menuoptions.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
* @license Menu Options jQuery widget is licensed under the MIT license
* @link http://www.menuoptions.org
* @docs http://menuoptions.readthedocs.org/en/latest/
* @version Version 1.9.0-10
* @version Version 1.7.5-10
*
*
******************************************/
Expand Down Expand Up @@ -704,7 +704,9 @@ this._cfg={
if ( ! /Rocker/i.test(this.options.MenuOptionsType) ) {
if ( ! params.hasOwnProperty(('noGreenChk'))) {
this._set_bg_color('good');
$("span#HLP_"+this.options._ID).show().html(' ').removeClass('helptext err_text').addClass('mask_match');
if (! /None/i.test(this.options.Help) ) {
$("span#HLP_"+this.options._ID).show().html(' ').removeClass('helptext err_text').addClass('mask_match');
}
}
}
},
Expand Down Expand Up @@ -830,10 +832,10 @@ this._cfg={
}
var RegExStr = params.case_ins ? new RegExp(params.StrToCheck, 'i') : new RegExp(params.StrToCheck);
var matching = $.map(this.orig_objs, function (o) {
if ( o.hasOwnProperty('val') === false || /string/i.test(typeof o.val) === false ) {
if ( o.hasOwnProperty('val') === false || /boolean|string|number/i.test(typeof o.val) === false ) {
return $this._validation_fail($this._cfg.dt_keys_err, 'fatal');
}
no_img = o.val.replace(/<img[\w\W]*?>/, '');
no_img = o.val.toString().replace(/<img[\w\W]*?>/, '');
/*-- rocker needs whole field matches (no partials) --*/
if ( /Rocker/.test($this.options.MenuOptionsType)) {
if ( o.ky.toString() === params.StrToCheck ||
Expand Down Expand Up @@ -1455,7 +1457,7 @@ this._cfg={
this._build_array_of_objs_menu();
return;
}
if (typeof $dd_span.options.Data[0] === 'string') {
if (/boolean|string|number/i.test(typeof $dd_span.options.Data[0])) {
/*-- take 1 dimensional array and make array of objs --*/
/*jslint unparam: true*/
$dd_span.options.Data = $.unique($dd_span.options.Data);
Expand Down Expand Up @@ -1570,8 +1572,9 @@ this._cfg={

_build_row : function (dd_span, subary) {
return $.map(subary, function (obj) {
if (!$.isFunction(obj.ky) && obj.ky.match(/^ *divider *$/i) &&
dd_span.options.MenuOptionsType === 'Navigate') {
if (!$.isFunction(obj.ky) &&
dd_span.options.MenuOptionsType === 'Navigate' &&
obj.ky.match(/^ *divider *$/i)) {
// for menu's, a non clickable divider row (for categories, etc)
return '\t<td class=' + obj.ky + '>' + obj.val + '</td>\n';
}
Expand Down Expand Up @@ -1679,7 +1682,9 @@ this._cfg={
}
if (/keydown|mousedown|click/.test(e.type)) {
/*-- only focus and keyup create a dropdown (otherwise multiple calls to dropdown logic) --*/
$("span#HLP_"+this.options._ID).show();
if (! /None/i.test(this.options.Help) ) {
$("span#HLP_"+this.options._ID).show();
}
return false;
}
return true;
Expand Down Expand Up @@ -1719,7 +1724,9 @@ this._cfg={
if ( this._matches(this.cached['.mo_elem'].val(), 'exact').length === 1) {
this._set_bg_color('good');
this.cached['.mo_elem'].val($('table.CrEaTeDtAbLeStYlE td:first').text());
$("span#HLP_"+this.options._ID).show().html('&nbsp;').removeClass('helptext err_text').addClass('mask_match');
if (! /None/i.test(this.options.Help) ) {
$("span#HLP_"+this.options._ID).show().html('&nbsp;').removeClass('helptext err_text').addClass('mask_match');
}
}
}
},
Expand Down
4 changes: 2 additions & 2 deletions dist/js/jquery.menuoptions.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/source/FAQ.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
FAQ
===

.. image:: https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-10
.. image:: https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-11
:target: https://travis-ci.org/compsult/MenuOptions

.. image:: https://saucelabs.com/buildstatus/compsult
Expand Down
4 changes: 2 additions & 2 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@
# built documents.
#
# The short X.Y version.
version = "1.9.0-10"
version = "1.9.0-11"
# The full version, including alpha/beta/rc tags.
release = "1.9.0-10"
release = "1.9.0-11"

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
2 changes: 1 addition & 1 deletion docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
Welcome to MenuOptions
=====================================================

.. image:: https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-10
.. image:: https://travis-ci.org/compsult/MenuOptions.svg?branch=1.9.0-11
:target: https://travis-ci.org/compsult/MenuOptions

.. image:: https://saucelabs.com/buildstatus/compsult
Expand Down
150 changes: 102 additions & 48 deletions examples/QuickStartSelect.html
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,15 @@
if ( document.URL.match(/singleobject/) ) {
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
} else if ( document.URL.match(/one_dimens_ary_bool/) ) {
data = [ true, false ];
} else if ( document.URL.match(/one_dimens_ary_num/) ) {
data = [ 1,2,3,4 ];
} else if ( document.URL.match(/one_dimens_ary/) ) {
data = [ "January","February","March","April","May", "June","July",
"August","September","October","November","December" ];
} else if ( document.URL.match(/two_dimens_ary_num/) ) {
data = [[1,2],[3,4]];
} else if ( document.URL.match(/two_dimens_ary/) ) {
data = [ [ "January","February"],["March","April"],["May", "June","July",
"August","September","October","November","December" ]];
Expand Down Expand Up @@ -77,30 +83,51 @@
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
}
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
if ( document.URL.match(/two_dimens_ary_num|one_dimens_ary_num|one_dimens_ary_bool/) ) {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"ShowAt": 'bottom',
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"Height": 200,
"Sort": []
});
} else {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
}
$('button#menutest').on('click', function (e) {
var tst = $('input#selecttest').menuoptions('re_serialize',$('form#tst').serialize());
alert (tst);
Expand Down Expand Up @@ -244,9 +271,15 @@ <h1>Code</h1>
if ( document.URL.match(/singleobject/) ) {
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
} else if ( document.URL.match(/one_dimens_ary_bool/) ) {
data = [ true, false ];
} else if ( document.URL.match(/one_dimens_ary_num/) ) {
data = [ 1,2,3,4 ];
} else if ( document.URL.match(/one_dimens_ary/) ) {
data = [ "January","February","March","April","May", "June","July",
"August","September","October","November","December" ];
} else if ( document.URL.match(/two_dimens_ary_num/) ) {
data = [[1,2],[3,4]];
} else if ( document.URL.match(/two_dimens_ary/) ) {
data = [ [ "January","February"],["March","April"],["May", "June","July",
"August","September","October","November","December" ]];
Expand Down Expand Up @@ -279,30 +312,51 @@ <h1>Code</h1>
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
}
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
if ( document.URL.match(/two_dimens_ary_num|one_dimens_ary_num|one_dimens_ary_bool/) ) {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"ShowAt": 'bottom',
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"Height": 200,
"Sort": []
});
} else {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
}
$('button#menutest').on('click', function (e) {
var tst = $('input#selecttest').menuoptions('re_serialize',$('form#tst').serialize());
alert (tst);
Expand Down
75 changes: 51 additions & 24 deletions examples/QuickStartSelect_test.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,15 @@
if ( document.URL.match(/singleobject/) ) {
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
} else if ( document.URL.match(/one_dimens_ary_bool/) ) {
data = [ true, false ];
} else if ( document.URL.match(/one_dimens_ary_num/) ) {
data = [ 1,2,3,4 ];
} else if ( document.URL.match(/one_dimens_ary/) ) {
data = [ "January","February","March","April","May", "June","July",
"August","September","October","November","December" ];
} else if ( document.URL.match(/two_dimens_ary_num/) ) {
data = [[1,2],[3,4]];
} else if ( document.URL.match(/two_dimens_ary/) ) {
data = [ [ "January","February"],["March","April"],["May", "June","July",
"August","September","October","November","December" ]];
Expand Down Expand Up @@ -64,30 +70,51 @@
data = { 1:"January",2:"February",3:"March",4:"April",5:"May", 6:"June",7:"July",
8:"August",9:"September",10:"October",11:"November",12:"December" };
}
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
if ( document.URL.match(/two_dimens_ary_num|one_dimens_ary_num|one_dimens_ary_bool/) ) {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"ShowAt": 'bottom',
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"Height": 200,
"Sort": []
});
} else {
$('input#selecttest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"DataKeyNames": DataKeyNames,
"ClearBtn": true,
"InitialValue": { 'val': init_data },
"ShowAt": 'bottom',
"NotInListWarns": false,
"Sort": []
});
$('input#scrolltest').menuoptions({
"Data": data,
"onSelect": function(mo, data) {
console.log(mo, data.newVal, data.newCode, data.type );
},
"ClearBtn": true,
"DataKeyNames": DataKeyNames,
"InitialValue": { 'val': init_data },
"NotInListWarns": false,
"Height": 200,
"Sort": []
});
}
$('button#menutest').on('click', function (e) {
var tst = $('input#selecttest').menuoptions('re_serialize',$('form#tst').serialize());
alert (tst);
Expand Down

0 comments on commit 91228af

Please sign in to comment.