Django:自定义单选按钮 Select 布局
Django: Custom Radio Select Layout
我正在尝试将我的收音机 select 控件的布局更改为以下形式:
<div class="oneitem">
<label><input type="radio" class="radio" />
<div>some extra content</div>
</div>
<div class="oneitem">
.....
</div>
我正在尝试编写自己的渲染器:
class RandomRenderer(forms.RadioSelect.renderer):
def render(self):
ret = ''
for w in self:
ret += '<div class="oneitem">'
ret += force_unicode(w)
ret += '</div>'
return mark_safe(ret)
我的问题:在行
for w in self:
如何访问标签字段和结果字段并添加'class="radio'"
除非我遗漏了什么,否则你不需要。添加 class 的唯一原因是用它做 CSS 技巧。
查看上面的渲染内容:
<div class="oneitem">
<label><input type="radio" />Option's label here</label>
<div>some extra content</div>
</div>
您的所有标签都可以使用 .oneitem label
作为目标,您的所有单选按钮都可以使用 .oneitem input
或使用 .oneitem input[type='radio']
进行额外的属性检查。所以 class='radio'
选项是多余的。
我正在尝试将我的收音机 select 控件的布局更改为以下形式:
<div class="oneitem">
<label><input type="radio" class="radio" />
<div>some extra content</div>
</div>
<div class="oneitem">
.....
</div>
我正在尝试编写自己的渲染器:
class RandomRenderer(forms.RadioSelect.renderer):
def render(self):
ret = ''
for w in self:
ret += '<div class="oneitem">'
ret += force_unicode(w)
ret += '</div>'
return mark_safe(ret)
我的问题:在行
for w in self:
如何访问标签字段和结果字段并添加'class="radio'"
除非我遗漏了什么,否则你不需要。添加 class 的唯一原因是用它做 CSS 技巧。
查看上面的渲染内容:
<div class="oneitem">
<label><input type="radio" />Option's label here</label>
<div>some extra content</div>
</div>
您的所有标签都可以使用 .oneitem label
作为目标,您的所有单选按钮都可以使用 .oneitem input
或使用 .oneitem input[type='radio']
进行额外的属性检查。所以 class='radio'
选项是多余的。