Показать сообщение отдельно
  #6 (permalink)  
Старый 27.09.2023, 14:05
Новичок на форуме
Отправить личное сообщение для zeroname Посмотреть профиль Найти все сообщения от zeroname
 
Регистрация: 27.09.2023
Сообщений: 7

voraa, спасибо, что указали.
Да, неверно чтобы не путать людей, лучше дать код полностью.

let formSendBtn = document.querySelectorAll('.formSend');
	for (let btn of formSendBtn) {
		btn.addEventListener('click', async () => {
			let message = `<h1>Вам письмо, тема "${btn.dataset.form}"</h1>`;
			let form = btn.closest('form');
			let fileds = form.querySelectorAll('input[data-field], select[data-field]');
			if(!form.reportValidity()) {
				return;
			}
			for (let field of fileds) {
				let valid = field.validity.valid;
				if (field.type !== 'file') {
					if (field.type == 'checkbox') {
						message += `<p><b>${field.dataset.field} :</b> ${(field.checked?'Да':'Нет')}</p>`;
					}else{
						message += `<p><b>${field.dataset.field} :</b> ${field.value}</p>`;
					}
				}
			};
			
			try {
				let data = new FormData();
				const fileInput = Array.from(fileds).find(el => el.type === 'file');
				if (fileInput) {
					const fileInputFiles = fileInput.files;
					for (var i = 0; i < fileInputFiles.length; i++) {
						var file = fileInputFiles[i];
						// Add the file to the request.
						data.append('files[]', file, file.name);
					}
				}
				
				
				data.append('message', message);
Ответить с цитированием