rails check_box_tag + label_tag

时间:2013-11-02 16:30:39

标签: checkbox ruby-on-rails-3.2 label slim-lang

在我看来,我有一个复选框和一个标签。 我正在使用SLIM,所以代码是

= check_box_tag 'All Products'
= label_tag 'All Products'

生成的等效HTML是

<input id="All_Products" name="All Products" type="checkbox" value="1">
<label for="All_Products">All products</label>

即使“输入ID”和“标签”都具有相同的值,即“All_Products”,但当我点击标签时,我无法选中该复选框。

我有什么遗漏的吗?

我想在点击标签时选中复选框。

2 个答案:

答案 0 :(得分:1)

`所有产品'可能不是用于元素ID /名称的最佳名称(即使它被转换),也许尝试一些更清洁的东西,如

= check_box_tag 'all-products'
= label_tag 'all-products', 'All Products'

应该产生

<input id="all-products" name="all-products" type="checkbox" value="1" />
<label for="all-products">All Products</label>

答案 1 :(得分:0)

这实际上应该有效。 然而,可能存在以下问题之一:

  • 页面上的ID不唯一;
  • 由于样式的原因,
  • 标签无法点击