Код: Выделить всё
Відправити
Код: Выделить всё
const sheetName = 'dataSite'
const scriptProp = PropertiesService.getScriptProperties()
function intialSetup () {
const activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet()
scriptProp.setProperty('key', activeSpreadsheet.getId())
}
function doPost (e) {
const lock = LockService.getScriptLock()
lock.tryLock(10000)
try {
const doc = SpreadsheetApp.openById(scriptProp.getProperty('key'))
const sheet = doc.getSheetByName(sheetName)
const headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]
const nextRow = sheet.getLastRow() + 1
const newRow = headers.map(function(header) {
return header === 'Date' ? new Date() : e.parameter[header]
})
sheet.getRange(nextRow, 1, 1, newRow.length).setValues([newRow])
return ContentService
.createTextOutput(JSON.stringify({ 'result': 'success', 'row': nextRow }))
.setMimeType(ContentService.MimeType.JSON)
}
catch (e) {
return ContentService
.createTextOutput(JSON.stringify({ 'result': 'error', 'error': e }))
.setMimeType(ContentService.MimeType.JSON)
}
}
Код: Выделить всё
$(document).ready(function() {
$("#add-form, #add-form2").submit(function(event) {
event.preventDefault(); // Prevent the default form submission behavior
alert('Повідомлення Відправлено !');
$.ajax({
type: "POST",
url: $(this).attr("action"),
data: $(this).serialize(),
error: function(xhr, status, error) {
// Handle the error (if needed)
console.error(xhr.responseText);
},
success: function(response) {
// After successful form submission, reset the form
$("#add-form, #add-from2")[0].reset();
window.close();
}
}).then(function() {
// Reload the page after successful AJAX request
window.location.reload();
});
});
});
Подробнее здесь: https://stackoverflow.com/questions/784 ... ogle-sheet