Feat(ButtonAddLine): Añadir linea de venta en formulario WIP
This commit is contained in:
parent
6795aa3dcc
commit
a63ae668a2
18
tienda_ilusion/don_confiao/static/js/add_line.js
Normal file
18
tienda_ilusion/don_confiao/static/js/add_line.js
Normal file
@ -0,0 +1,18 @@
|
||||
document.addEventListener('DOMContentLoaded', function(){
|
||||
var button = document.getElementById('add_line');
|
||||
var formContainer = document.getElementById('formset-container');
|
||||
var totalForms = document.getElementById('id_form-TOTAL_FORMS');
|
||||
button.addEventListener('click', function(){
|
||||
// Clonar un formulario vacío
|
||||
var newForm = formContainer.querySelector('.form-container').cloneNode(true);
|
||||
// Obtener el número actual de formularios
|
||||
var formCount = parseInt(totalForms.value);
|
||||
// Actualizar los atributos de los nuevos campos del formulario
|
||||
var regex = new RegExp('__prefix__', 'g');
|
||||
newForm.innerHTML = newForm.innerHTML.replace(regex, formCount);
|
||||
// Añadir el nuevo formulario al contenedor
|
||||
formContainer.appendChild(newForm);
|
||||
// Incrementar el total de formularios
|
||||
totalForms.value = formCount + 1;
|
||||
});
|
||||
});
|
@ -1,12 +1,19 @@
|
||||
<!doctype html>
|
||||
{% load static %}
|
||||
<form method="POST">
|
||||
{% csrf_token %}
|
||||
{{ sale_form}}
|
||||
{% csrf_token %}
|
||||
{{ sale_form}}
|
||||
{{ linea_formset.management_form }}
|
||||
{% for form in linea_formset %}
|
||||
<table style="border: solid 1px blue; margin: 10px">
|
||||
{{ form.as_table }}
|
||||
</table>
|
||||
<div id="formset-container">
|
||||
{% for form in linea_formset %}
|
||||
<div class="form-container">
|
||||
<table style="border: solid 1px blue; margin: 10px">
|
||||
{{ form.as_table }}
|
||||
</table>
|
||||
</div>
|
||||
{% endfor %}
|
||||
<br/><button name="form" type="submit" >Comprar</button>
|
||||
</div>
|
||||
<button id="add_line">Añadir Linea</button>
|
||||
<br/><button name="form" type="submit" >Comprar</button>
|
||||
<script src="{% static 'js/add_line.js' %}"></script>
|
||||
</form>
|
||||
|
Loading…
Reference in New Issue
Block a user