ziggurat.js
Version:
a tiny modular js library for templates and other shorthands
42 lines (37 loc) • 913 B
JavaScript
// Generated by CoffeeScript 2.7.0
var element, fn_name, i, len, ref;
zg.formdata = function(element) {
var data;
data = {};
// for each entry in the form,
// add a reference to it in data
(new FormData(element)).forEach(function(_, k) {
return Object.defineProperty(data, k, {
get: function() {
return element[k].value;
},
set: function(v) {
return element[k].value = v;
}
});
});
return data;
};
ref = zg.queryall('form[zg-submit]');
for (i = 0, len = ref.length; i < len; i++) {
element = ref[i];
fn_name = element.getAttribute("zg-submit");
element.onsubmit = function(event) {
var e;
try {
// fuck around and find out
window[fn_name](zg.formdata(element));
} catch (error) {
e = error;
console.error(e);
}
// prevent event default
event.preventDefault;
return false;
};
}