Bootstrap select 和 django 模板
Bootstrap select and django template
大家好!
我的 Bootsrap select 和我的 Django 模板有一个奇怪的行为。
我有一个带有编辑表单的用户配置文件模板,我在模板标签内添加了字段的当前值,如下所示:
<select id="id_bd_month" name="bd_month" class="selectpicker" data-width="100%" data-size="6">
<option value="{{ request.user.profile.bd_month}}" selected="selected"></option>
<option value=“01”>January</option>
<option value=“02”>February</option>
…
我有一个基本脚本:
$('.selectpicker').selectpicker('render');
最初,当我加载页面时,它显示 "Nothing selected"。但是如果我再次刷新它(F5),插件可以正常工作。
为什么我有这种奇怪的效果?
您应该将 selected
属性设置为所选 <option>
而不是空属性:
<select id="id_bd_month" name="bd_month" class="selectpicker" ...>
<option value="01">January</option>
<option value="02" selected="selected">February</option>
或者将选定的值传递给 selectpicker()
方法:
$('.selectpicker').selectpicker('render');
$('.selectpicker').selectpicker('val', '{{ request.user.profile.bd_month}}');
终于找到解决办法了!正如 catavaran 所说,这不是 Django 开发服务器问题。我只是误解了如何正确使用 'render' 和 'value' 方法。就我而言,解决方案很简单:
$('.selectpicker').val('{{ request.user.profile.bd_month }}');
$('.selectpicker').selectpicker('render');
感谢 catavaran 的帮助!
大家好!
我的 Bootsrap select 和我的 Django 模板有一个奇怪的行为。
我有一个带有编辑表单的用户配置文件模板,我在模板标签内添加了字段的当前值,如下所示:
<select id="id_bd_month" name="bd_month" class="selectpicker" data-width="100%" data-size="6">
<option value="{{ request.user.profile.bd_month}}" selected="selected"></option>
<option value=“01”>January</option>
<option value=“02”>February</option>
…
我有一个基本脚本:
$('.selectpicker').selectpicker('render');
最初,当我加载页面时,它显示 "Nothing selected"。但是如果我再次刷新它(F5),插件可以正常工作。
为什么我有这种奇怪的效果?
您应该将 selected
属性设置为所选 <option>
而不是空属性:
<select id="id_bd_month" name="bd_month" class="selectpicker" ...>
<option value="01">January</option>
<option value="02" selected="selected">February</option>
或者将选定的值传递给 selectpicker()
方法:
$('.selectpicker').selectpicker('render');
$('.selectpicker').selectpicker('val', '{{ request.user.profile.bd_month}}');
终于找到解决办法了!正如 catavaran 所说,这不是 Django 开发服务器问题。我只是误解了如何正确使用 'render' 和 'value' 方法。就我而言,解决方案很简单:
$('.selectpicker').val('{{ request.user.profile.bd_month }}');
$('.selectpicker').selectpicker('render');
感谢 catavaran 的帮助!