diff --git a/myproject/orders/templates/orders/order_form.html b/myproject/orders/templates/orders/order_form.html index e59a658..a699d8c 100644 --- a/myproject/orders/templates/orders/order_form.html +++ b/myproject/orders/templates/orders/order_form.html @@ -853,12 +853,16 @@ document.addEventListener('DOMContentLoaded', function() { // Обработчик submit - очищаем пустые строки перед валидацией orderForm.addEventListener('submit', function(e) { + console.log('[Form Cleanup] Начало очистки пустых форм товаров'); + // Находим все формы товаров const itemForms = document.querySelectorAll('.order-item-form'); + console.log('[Form Cleanup] Найдено форм:', itemForms.length); - itemForms.forEach(form => { + itemForms.forEach((form, formIndex) => { // Пропускаем уже удалённые формы if (form.classList.contains('deleted')) { + console.log(`[Form Cleanup] Форма ${formIndex}: уже удалена, пропуск`); return; } @@ -875,12 +879,21 @@ document.addEventListener('DOMContentLoaded', function() { const hasQuantity = quantityField && quantityField.value && quantityField.value.trim(); const hasPrice = priceField && priceField.value && priceField.value.trim(); + console.log(`[Form Cleanup] Форма ${formIndex}:`); + console.log(` - product: ${hasProduct || '(пусто)'}`); + console.log(` - kit: ${hasKit || '(пусто)'}`); + console.log(` - quantity: ${hasQuantity || '(пусто)'}`); + console.log(` - price: ${hasPrice || '(пусто)'}`); + // Если ВСЁ пусто — это мусорная строка, удаляем const isCompletelyEmpty = !hasProduct && !hasKit && !hasQuantity && !hasPrice; + console.log(` - Полностью пустая? ${isCompletelyEmpty}`); + if (isCompletelyEmpty) { // Если есть ID (сохранённая позиция) — помечаем на удаление if (idField && idField.value) { + console.log(` - Действие: помечаем DELETE (есть ID: ${idField.value})`); const deleteCheckbox = form.querySelector('input[name$="-DELETE"]'); if (deleteCheckbox) { deleteCheckbox.checked = true; @@ -888,12 +901,16 @@ document.addEventListener('DOMContentLoaded', function() { form.classList.add('deleted'); form.style.display = 'none'; } else { + console.log(` - Действие: удаляем из DOM (нет ID)`); // Новая несохранённая форма — просто удаляем из DOM form.remove(); } + } else { + console.log(` - Действие: оставляем (не пустая, пойдёт на валидацию)`); } }); + console.log('[Form Cleanup] Очистка завершена'); // Всё остальное идёт на валидацию Django как есть }); });