html - django 表格 : styling widget when field is required or has an error

标签 html css django-forms

我正在创建一个 Django 表单,当出现错误或需要该字段时(例如:突出显示该字段的框),我似乎无法访问每个字段的小部件以设置不同的样式。

HTML:

{% block content %}
  <form action="" method="POST" class="form">  {% csrf_token %}
    {% for field in form %}
      <div class="fields-container">
        <p class="label">{{ field.label }}</p>
          {{ field }}
      </div>
      {{ field.errors }} 
    {% endfor %}
    <button type="submit" id="form-button">Submit</button>
  </form>
{% endblock %}

CSS:

.label {
  margin: 0 5px 0 0;
  width: 20%;
  text-align: left;
}


#id_full_name, #id_email, #id_message {
  margin: 0;
  flex: 1 1;
}

#id_message {           
  resize: none;
  overflow: auto;
}


.errorlist {                /*default css class for form errors*/
  color: 999999;
  font-size: 75%;
  font-weight: bold;
  list-style: none;
  margin-bottom: 5px;
  align-self: flex-start;       
}

我一直在使用#id_fieldname 访问小部件并设置其样式,但我尝试了以下方法但没有成功:

#id_fieldname.required, id_fieldname.error { border: 2px solid red; }

提前致谢!

最佳答案

您可以在容器中添加一个“必需”类 <div> :

<div class="fields-container {% if field.field.required %}required{% endif %}">

使用 Django 表单方法 form.as_p , form.as_ul , form.as_table ,如果您在表单中为必填字段声明特定的 css 类,这将自动完成,例如:

class myForm(forms.Form):
     required_css_class = 'required'
     ...

更多信息 documentation

关于html - django 表格 : styling widget when field is required or has an error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35243890/

相关文章:

html - 可以同时使用 ~ 和 + 选择器吗?

html - 纯CSS有条件地改变 body 的背景颜色

django - "user_id"列中的空值违反了 Django 1.9 中的非空约束

javascript - 如何组织我的 div 标签?

python - Django 表单错误 : Select a valid choice. 该选项不是可用选项之一

django - WSGIRequest'对象没有属性'session_key

javascript - 将自定义属性附加到 DOM 节点

jquery - 如何在 css 中更改 li 最后一个元素的填充

python - XPath:如何根据紧邻其之前的同级元素的值来选择一个元素?

html - @media max-width 在移动浏览器上不起作用?