0

私はRyan Batesのエピソードをネストされたフォームフィールドに従っており、パート2の最後にjqueryのビットを追加しました。フィールド)。私は今あなたがフォームに追加できるフィールドの数を制限したい。ライアンベイツが書かれているように私application.jsに私は
jqueryが機能しないネストされたフォームフィールドを制限する方法

function add_fields(link, association, content) { 
     var new_id = new Date().getTime(); 
     var regexp = new RegExp("new_" + association, "g") 
     $(link).parent().before(content.replace(regexp, new_id)); 
} 

を持っています。別のポストを読んで私は今読むための行を変更:

function add_fields(link, association, content) { 
    if($(".fields input").length < 5) { 
     var new_id = new Date().getTime(); 
     var regexp = new RegExp("new_" + association, "g") 
     $(link).parent().before(content.replace(regexp, new_id)); 
    } 
} 

しかし、これは動作しません、私はここで何か間違ったことをしています。助けてくれてありがとう。

* EDIT
これは、入力フィールドの量を計算するだけの小さな変化形

<%= form_for @question, :url => { :controller => "questions", :action => "create" } do |f| %> 
    <%= f.label(:name, "Request Question:") %>&nbsp;&nbsp; 
    <%= f.text_field(:name, :size => 72, :maxlength => 120, :id => "name") %><br /> 
    <fieldset> 
     <legend><b>Tags</b></legend> 
     <%= f.fields_for :tags, :url => { :controller => "tags", :action => "create" } do |builder| %> 
      <%= render "tag_fields", :f => builder %> 
     <% end %> 
     <p><%= link_to_add_fields "Add new keyword", f, :tags %></p> 
    </fieldset> 
<% end %> 

タグフィールド部分

<p class="fields"> 
    <%= f.label(:keyword, "Keywords:") %>&nbsp;&nbsp; 
    <%= f.text_field(:keyword, :size => 20, :maxlength => 25, :id => "keyword") %> 
    <%= link_to_remove_fields "remove", f %> 
</p> 

答えて

1

ある:

function add_fields(link, association, content) { 
    if($(":input").length < 5) { 
     // logic to add items 
    } 
} 

あなたが入力されたIDを持つ特定のdivの内容を確認したい場合は、次の(一例として)「コントロール」:

function add_fields(link, association, content) { 
    if($("#controls :input").length < 5) { 
     // logic to add items 
    } 
} 
+0

はあなたに感謝を。私は長さを5に設定し、フィールドを追加するためにクリックすると3つのフィールドに制限されますか?何か案が? – Hishalv

+0

あなたのコンテナにおそらく2種類の入力がありますか?そうであればセレクタを絞り込んで除外することができます。おそらく、私があなたのマークアップの一部を私に見せるなら、あなたをさらに助けることができます。 – f0x

+0

編集のために上記を参照してください。もう一度お手伝いをしてください。 – Hishalv

関連する問題