JSFiddle - React, Tailwind, and code Playground
by cmruser
HTML
<div>
<button data-fs-click="draft">draft</button>
<button data-fs-click="save">save</button>
<button data-fs-click="renew">renew</button>
<button data-fs-click="revise">revise</button>
<button data-fs-click="close">close</button>
</div>
JavaScript
var FormSubmit = function() {
var data = arguments[0];
var defaults = {
event: {
local: {
click: 'data-fs-click',
change: 'data-fs-change',
input: 'data-fs-input'
}
}
};
var _this = this;
var helper = {
extend: function() {
},
get: function() {
},
set: function() {
}
};
var handler = {
click: {
add: function() {
},
delete: function() {
},
draft: function() {
//
_this.submit();
},
save: function() {
//
_this.validate('save');
},
renew: function() {
//
},
revise: function() {
//
},
close: function() {
//
}
}
};
var load = {
event: function(group, handler) {
for (var type in group) {
switch (type) {
case 'click':
case 'change':
case 'input':
var key = '';
var selector = '[' + group[type] + ']';
var str = group[type].split('-');
var datatype = str.indexOf(type);
str.splice(datatype, 1);
str.splice("data", 1);
key = str.join("-");
if(key !== '')
key = key + '-';
$(document).on(type, selector, function(e) {
var event = e.type;
if(event in handler && $(this).data(key + event) in handler[event]) {
handler[event][$(this).data(key + event)].apply(this, arguments);
}
});
break;
case 'tab':
var name = type;
var selector = group[type];
$(document).on('click', selector, function(e) {
var event = e.type;
if(event in handler) {
handler[event][name].apply(this, arguments);
}
});
break;
}
}
}
}
_this.validate =...