2012-10-14 34 views
0

我在軌道3中使用nested_form,我有一個動態字段,用戶可以添加或刪除。軌道形式動態字段選擇器

我需要知道那些字段的jquery選擇器,所以我可以在字段之間做一些javascript計算,目前動態字段有一個當前日期時間設置爲字段,人們通常如何處理動態字段驗證?

<%= nested_form_for [@project, @quote], :html => {:class =>'form-inline'} do |f| %> 
<div> 
    <%= f.hidden_field :project_id %> 
    <%= f.label :name %> 
    <%= f.text_field :name %> 
    <%= f.label :status %> 
    <%= f.text_field :status %> 
</div> 
    <p> 
    <h4> Labour Items </h4> 
    </p> 
    <p> 
    <%= f.fields_for :labouritems, :html => { :class => 'form-vertical' } do |builder| %> 

    <%= builder.label :description %> 
    <%= builder.text_field :description, :class => "input-medium" %> 
    <%= builder.label :hours %> 
    <%= builder.text_field :hours, :class => "input-mini" %> 
    <%= builder.label :total %> 
    <%= builder.text_field :total, :class => "input-mini" %> 
    <%= builder.label "Mup/Hr" %> 
    <%= builder.text_field :muphourrate, :class => "input-mini" %> 
     <%= builder.label "Mup/Total" %> 
    <%= builder.text_field :muptotal, :class => "input-mini" %> 
    <%= builder.label "Mup/%" %> 
    <%= builder.text_field :muppercent, :class => "input-mini" %> 
    <%= builder.label "Contractor" %> 

    <%= builder.autocomplete_field :contractor_name, autocomplete_contractor_firstname_contractors_path, :update_elements => {:id => "##{form_tag_id(builder.object_name, :contractor_id)}" , :hourly_rate => "##{form_tag_id(builder.object_name, :contractor_rate)}" },:class => "input-small",:placeholder => "Seach" %> 
    <%= builder.hidden_field :contractor_id %> 
    <%= builder.label "Rate/hr" %> 
    <%= builder.text_field :contractor_rate,:class => "input-mini" %> 
    <%= builder.label "Work %" %> 
    <%= builder.text_field :progress_percent, :class => "input-mini" %> 
    <%= builder.label "Work $" %> 
    <%= builder.text_field :progress_payment, :class => "input-mini" %> 

    <%= builder.link_to_remove "Delete",:class => 'btn btn-small btn-danger' %> 

    <% end %> 

    <%= f.link_to_add "Add Item", :labouritems, :class => 'btn btn-small btn-primary' %> 
</p> 

回答

0

我不知道你需要驗證什麼類型的信息,但類似的東西應該有所幫助。所有你想驗證的領域需要一個類或ID。如果您需要以某種方式驗證某個問題,請爲其提供一個ID並使用$("#elements_id")來選擇jQuery。

$(".form-inline").submit(function(){ 

    $.each($(".input-mini"), function(){ 
    if($(this).val() == ""){ 
     $("#warnings").html("<p> Ooops, you forgot something </p>"); // Warn 
     return false; // Don't submit 
    } 
    } 

});