zoukankan      html  css  js  c++  java
  • form表单渲染和验证

    {% load static %}
    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>title</title>
    <link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
    </head>
    <body>
    <h1>这是添加页面</h1>
    {#{{ form_obj.as_p }}将所有的字段都渲染出来#}
    <div class="container">
    <div class="row">
    <div class="col-md-10 col-md-offset-1">
    <form action="{% url 'index' %}" method="post" novalidate>{# novalidate是告诉浏览器不需要做验证#}
    {% csrf_token %}
    {% for field in form_obj %}
    {# <div class="form-group has-error">{# has-error判断错误信息使得框变红 #}
    <div class="form-group {% if field.errors.0 %} has-error {% endif %}">
    <label for="{{ field.id_for_label }}">{{ field.label }}</label>
    {{ field }}
    {# {{ field.errors.0 }}#}
    <span class="text-danger
    ">{{ field.errors.0 }}</span>{# 错误信息变红 #}
    </div>

    {% endfor %}
    <input type="submit" class="btn btn-success pull-right" value="保存">
    </form>
    {# <div class="form-group ">#}
    {# <label for="{{ form_obj.title.id_for_label }}">{{ form_obj.title.label }}</label>#}
    {# {{ form_obj.title }}{# field s生成input标签 #}
    {# </div>#}
    {# <div class="form-group">#}
    {##}
    {# <label for="{{ form_obj.price.id_for_label }}">{{ form_obj.price.label }}</label>#}
    {# {{ form_obj.price }}#}
    {# </div>#}
    {# <div class="form-group">#}
    {# <label for="{{ form_obj.date.id_for_label }}">{{ form_obj.date.label }}</label>#}
    {# {{ form_obj.date }}#}
    {# </div>#}
    {# <div class="form-group">#}
    {# <label for="{{ form_obj.password.id_for_label }}">{{ form_obj.password.label }}</label>#}
    {# {{ form_obj.password }}#}
    {# </div>#}
    {# <div class="form-group">#}
    {# <label for="{{ form_obj.sex.id_for_label }}">{{ form_obj.sex.label }}</label>#}
    {# {{ form_obj.sex }}#}
    {# </div>#}
    {# <div class="form-group">#}
    {# <label for="{{ form_obj.publish.id_for_label }}">{{ form_obj.publish.label }}</label>#}
    {# {{ form_obj.publish }}#}
    {# </div>#}
    {# <div class="form-group">#}
    {# <label for="{{ form_obj.author.id_for_label }}">{{ form_obj.author.label }}</label>#}
    {# {{ form_obj.author }}#}
    {# </div>#}
    </div>
    </div>
    </div>


    <script src="{% static 'jquery-3.4.1.js' %}"></script>
    <script src="{% static 'jquery.cookie.js' %}"></script>
    <script src="{% static 'bootstrap-3.3.7-dist/js/jquery.min.js' %}"></script>
    </body>
    </html>
  • 相关阅读:
    Linux 字典数组应用
    Linux shell 字符串切割 内置方法
    【Swing/文本组件】定义自动换行的文本域
    【C++语法基础】实验1
    【Swing程序设计/常用面板】
    【标签组件与图标 3.3】
    【2018.2.26算法总结#分治】
    数据结构#课表排序及查询
    数据结构#前序遍历建立二叉树 输出中序遍历
    OJ#1002 又是a+b
  • 原文地址:https://www.cnblogs.com/Zhao159461/p/11000895.html
Copyright © 2011-2022 走看看