Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- * @param {jQuery|String} $form
- * @return {Array.<String,String|number>}
- */
- function getFormInputsAsObject($form) {
- var fields = {},
- promises = [];
- if (typeof tinyMC !== "undefined" && tinyMCE !== undefined) {
- $("#" + tinyMCE.activeEditor.id).val(tinyMCE.activeEditor.getContent());
- }
- $form = $form instanceof jQuery ? $form : (typeof $form === "string" || typeof $form === "object") ? $($form) : false;
- if (!$form) throw Error("el elemento donde agregar no existe");
- $form.find(":input:empty, select:not(:empty)").map((i, e)=>{
- fields[e.name || e.id] = $(e).val();
- });//).find("input:file")
- fields["file"] = [];
- $form.find("input:file").each( async (i, e)=>{
- if(!!! e.files.length) return;
- console.log(e.files);
- await $(e.files).each(async (k,f)=>{
- fields[e.name || e.id][k] = await readFileAsDataURL(f);
- // promise = readFileAsDataURL(f);
- // promises.push(promise);
- // promise.then((file)=>{fields[e.name || e.id][k] = file});
- // var reader = new FileReaderSync();
- // fields[e.name || e.id][k] = reader.readAsDataURL(f);
- });
- });
- // $form.find(":input").each(function () {
- // if ((this.name !== "" && this.value !== "") || this.required) fields[this.name] = $(this).val();
- // });
- return fields;
- }
- function readFileAsDataURL(file) {
- let result_base64 = new Promise((resolve) => {
- let fileReader = new FileReader();
- fileReader.onload = (e) => resolve(fileReader.result);
- fileReader.readAsDataURL(file);
- });
- // var resultado = await result_base64.then((r)=> {resultado = r});
- console.log(result_base64); // aGV5IHRoZXJl...
- return result_base64;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement