【问题标题】:placeholder attribute is invalid when check it in browser在浏览器中检查占位符属性时无效
【发布时间】:2018-05-31 14:16:22
【问题描述】:

我在每个标签中为占位符分配值,例如:

  <div class="form-group">
    <label for="firstname" class="col-sm-1 control-label">FirstName</label>
    <div class="col-sm-11">
      <input type="text" class="form-control" id="firstname" value= {{ form.first_name.value }} name="first_name" placeholder="first_name">
    </div>
  </div>
  <div class="form-group">
    <label for="lastname" class="col-sm-1 control-label">Lastname</label>
    <div class="col-sm-11">
      <input type="text" class="form-control" id="lastname" name="last_name" value= {{ form.first_name.value }} placeholder="last_name">
    </div>
  </div>

但是,当我在浏览器上查看时,它显示为无。

如何解决这样的问题?

【问题讨论】:

    标签: html django twitter-bootstrap


    【解决方案1】:

    以字符串格式传递值,如下所示:

    value="{% if form.first_name.value %}{{ form.first_name.value }}{%else%}{%endif%}"
    

    这将解决问题,因为如果 value 属性的值为空,那么只有 placeholder 属性的值会出现!

    【讨论】:

      【解决方案2】:

      您所看到的实际上正是您所写的。 form.first_name.valueNone 如果没有在表单上设置,所以它设置 value="None" 和 lo,这是表单尽职尽责地优先显示占位符的内容。

      如果field.valueNone,您需要为默认值获取一个''。一种方法是使用{% if form.first_name.value %} {{ form.first_name.value }} {% endif %} 进行显式检查。更简洁,{{ form.first_name.value|default_if_none:"" }} 使用模板过滤器。

      【讨论】:

        猜你喜欢
        • 2011-04-29
        • 2014-03-07
        • 2011-04-25
        • 1970-01-01
        • 2013-01-21
        • 1970-01-01
        • 2021-05-26
        • 2012-12-27
        • 1970-01-01
        相关资源
        最近更新 更多