44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
var submit = function (url, data) {
|
|
// create a form
|
|
var form = document.createElement('form');
|
|
form.method = 'POST';
|
|
form.action = url;
|
|
form.style.display = 'none';
|
|
|
|
// add the form data to the form
|
|
for (var key in data) {
|
|
var input = document.createElement('input');
|
|
input.type = 'hidden';
|
|
input.name = key;
|
|
input.value = data[key];
|
|
form.appendChild(input);
|
|
}
|
|
|
|
// submit the form
|
|
document.body.appendChild(form);
|
|
form.submit();
|
|
}
|
|
|
|
var toFormData = function (obj) {
|
|
var formData = new FormData();
|
|
for (var key in obj) {
|
|
formData.append(key, obj[key]);
|
|
}
|
|
return formData;
|
|
}
|
|
var fetchPHP = async function (url, data = {}) {
|
|
return response = await fetch(
|
|
url,
|
|
{ method: 'POST', body: toFormData(data) }
|
|
)
|
|
.then(response => {
|
|
try {
|
|
return response.json()
|
|
}
|
|
catch (e) {
|
|
var message = 'Error en la respuesta del servidor';
|
|
Promise.reject(message)
|
|
}
|
|
})
|
|
.then(response => response.error ? Promise.reject(response.error) : Promise.resolve(response))
|
|
}
|