Django模板注册表单报错时如何设置字段为红色并调整错误提示样式
实现方案
要实现表单校验错误时输入框变红的效果,只需要做两步修改即可:
- 新增错误状态的CSS样式
把下面这段样式放到页面的<style>标签里,或者你项目的公共样式文件中,颜色和你现有错误提示的红色保持统一:
.form-control.error { border-color: #c13b2a; /* 可选添加阴影效果,视觉更明显 */ box-shadow: 0 0 0 2px rgba(193, 59, 42, 0.2); }
- 修改模板input标签的动态样式逻辑
找到循环渲染表单字段的input代码,给class属性加字段错误的判断逻辑,有错误时就追加error类:
原代码:
<input name="{{field.html_name }}" id="{{ field.id_for_lable }}" class="form-control" type="{{ field.field.widget.input_type }}" value="{{ field.value|default_if_none:'' }}" placeholder="{{field.label}}">
修改后代码:
<input name="{{field.html_name }}" id="{{ field.id_for_lable }}" class="form-control{% if field.errors %} error{% endif %}" type="{{ field.field.widget.input_type }}" value="{{ field.value|default_if_none:'' }}" placeholder="{{field.label}}">
小提示:你当前代码里的id_for_lable拼写有误,正确的属性名是id_for_label,后续如果要做label和输入框的关联点击功能,建议修正这个拼写。
内容的提问来源于stack exchange,提问作者Rhdehd
相关产品推荐
相关产品推荐

