0

単純なフォームが生成する入力要素の順序を変更するにはどうすればよいですか?

非表示のチェックボックスがラベルのクリックをブロックするためです。

私の simple_form コード:

<label>
  <span>Company<b></b></span>
  <%= f.check_box :company_is_true %>
</label>

単純なフォームのフォームは次を生成します。

    <label>
        <span>Company<b>0</b></span>
       <input type="hidden" value="0" name="search[company_is_true]">
<input type="checkbox" value="1" name="search[company_is_true]" id="search_company_is_true">
      </label>

ラベルをクリックすると機能する、生成したいもの:

<label>
    <span>Company<b>0</b></span>

<input type="checkbox" value="1" name="search[company_is_true]" id="search_company_is_true">
    <input type="hidden" value="0" name="search[company_is_true]">
  </label>
4

2 に答える 2

2

コメントのリストにコメントを追加する方法がわかりませんが、次のように応答します。

ユーザーはラベルをクリックしてチェックボックスをオンまたはオフにできる必要があります – Rails初心者 1時間前

ユーザーがそのラベルをクリックできないようにするのはチェックボックスではなく、 for="" の欠如です

<label>
  <span>Company<b></b></span>
  <%= f.check_box :company_is_true %>
</label>

前述の agmcleod のように <%= f.label %> を使用するか、ラベルに for="" を追加します。

<label for="search_company_is_true">
  <span>Company<b></b></span>
  <%= f.check_box :company_is_true %>
</label>
于 2011-08-05T14:31:09.730 に答える
1

従来の html フォームでは、次のような構造にする必要があります。

<label for="name">Name: </label>
<input type="text" name="name" />

for 属性は、 for で使用する値を持つ name 属性または id 属性を持つフィールドに接続します。レールでこれを行うには、次を使用します。

<%= f.label :company_is_true, 'Company' %>
<%= f.check_box :company_is_true %>
于 2011-08-05T13:00:14.377 に答える