【发布时间】:2020-05-14 14:35:37
【问题描述】:
我在使用 Jquery.formset 时遇到了“美容”问题。
我有一个带有嵌套子表单(formset)的表单,我使用 JQuery 添加(或删除)子表单(删除和添加新按钮)
“问题”是添加了子表单但崩溃了
我想用
添加新的子表单,但不知道如何继续...
感谢您的帮助
html
{% extends 'layouts/base.html' %}
{% load static %}
{% load crispy_forms_tags %}
{% load widget_tweaks %}
{% block extrahead %}{% endblock %}
{% block title %}Utilisateurs | Mereva{% endblock %}
{% block content %}
<!-- Source code: https://codewithmark.com/easily-edit-html-table-rows-or-cells-with-jquery -->
<!-- Source code: https://whoisnicoleharris.com/2015/01/06/implementing-django-formsets.html -->
<div class='container'>
<br>
<br>
<h1 id="utilisateur" data-parameters="">Formulaire utilisateur</h1>
<br><br>
<div class="row">
</div>
<form id="utilisateureditform" method="POST" class="post-form">
{% csrf_token %}
{{ form|crispy }}
<br><br><div class="dropdown-divider"></div><br><br>
<h2>Applications</h2><br><br>
<!-- {{ application|crispy }} -->
{{ application.management_form }}
<div class="row">
<div class="col-6">Nom de l'application</p></div>
<div class="col-5"><p>Droits</p></div>
<div class="col-1"></div>
</div>
{% for application_form in application %}
<div class="row link-formset">
{% if application_form.instance.pk %}{{ application_form.DELETE }}{% endif %}
<div class="col-6">
{{ application_form.app_app_nom }}
{% if application_form.app_app_nom.errors %}
{% for error in application_form.app_app_nom.errors %}
{{ error|escape }}
{% endfor %}
{% endif %}
</div>
<div class="col-5">
{{ application_form.app_dro }}
{% if application_form.app_dro.errors %}
{% for error in application_form.app_dro.errors %}
{{ error|escape }}
{% endfor %}
{% endif %}
</div>
<div class="hidden">{{ application_form.app_ide }}</div>
</div><br>
{% endfor %}
{% if application.non_form_errors %}
{% for error in application.non_form_errors %}
{{ error|escape }}
{% endfor %}
{% endif %}
<br>
<input class="btn btn-primary" type="submit" value="Valider" style="width: 100px;">
<a data-modal data-target="" class="btn btn-danger" href="{% url 'project:index' %}" style="width: 100px;">Annuler</a>
</form>
{% endblock %}
{% block extrabody %}
<script src="{% static 'project/js/jquery.formset.js' %}"></script>
<script type="text/javascript">
$('.link-formset').formset({
addText: 'Ajouter',
deleteText: 'Supprimer',
prefix: '{{ application.prefix }}'
});
$(document).ready(function() {
$('html body div.container form#utilisateureditform.post-form a.add-row').before('<br>');
});
</script>
{% endblock %}
【问题讨论】:
标签: jquery django inline-formset