Parsley.js rails嵌套属性未验证

时间:2014-08-07 18:00:51

标签: javascript ruby-on-rails parsley.js

我在rails中的simple_form中有一些嵌套属性(使用simple_fields_for)。

主要形式就像这样开始,欧芹正常运作:

<%= simple_form_for(@enquiry, wrapper: :vertical_form, html: {"data-parsley-validate" => ''}) do |f| %>

<%= f.input :total_budget, class: 'form-control', placeholder: 'Please enter your total or per head budget', label: 'Budget', input_html: { "data-parsley-error-message" => "Please enter a budget", "data-parsley-trigger" => "focusin focusout change" } %>

然而,在下面的形式中,我有这个:

<%= f.simple_fields_for :client do |builder| %>
    <%= render 'sign_up_fields', f: builder %>
  <% end %>

并且渲染的部分是:

    <div class="row">
  <div class="col-md-6">
    <div class="form-group">
        <%= f.input :first_name, class: 'form-control', placeholder: 'First name' %>
    </div>
  </div>
  <div class="col-md-6">
    <div class="form-group">
        <%= f.input :last_name, class: 'form-control', placeholder: 'Last name' %>
    </div>
  </div>
</div>

<%= f.simple_fields_for :user do |builder| %>

<div class='row'>
    <div class="col-md-6">
      <div class="form-group">
        <%= builder.input :email, class: 'form-control', placeholder: 'Email', required: "true" %>
      </div>
      <% if builder.object.errors[:email] %>
            <%= f.object.errors[:email].join(", ") %>
            <% end %>
    </div>
    <div class="col-md-6">
      <div class="form-group">
          <%= f.input :phone_number, class: 'form-control', placeholder: 'Phone number' %>
      </div>
    </div>
    <div class="col-md-6">
      <div class="form-group">
        <%= builder.input :password, class: 'form-control', placeholder: 'Password', required: "true" %>
      </div>
      <% if builder.object.errors[:password] %>
            <%= f.object.errors[:password].join(", ") %>
            <% end %>
    </div>

  <% end %>
</div>

我尝试过以各种方式将parsley-data-validation添加到simple_fields_for部分,没有尝试过,并尝试将parsley验证添加到实际字段中,但是也没有。

还有什么我应该做的不同吗?

干杯

1 个答案:

答案 0 :(得分:0)

原来我是个白痴。

我在验证的字段中输入了错误的ID。我仍然需要使用额外的j来验证该字段;它并没有被主要的html所吸引:{&#34; data-parsley-validate&#34; =&GT; &#39;}在表单的顶部。

$(&#39;#enquiry_client_attributes_user_attributes_email&#39)欧芹(&#39;验证&#39);