1

jquery の .before(); を使用してフォーム要素を繰り返したい method 、フォームのユーザーがこの場合、より多くの材料をレシピに追加できるようにします。

これまでのところ私はこれを思いつきましたが、jsファイルでルビーコードを使用することはできません

 $('document').ready(function() {
  var ingredient = '<%= f.text_field :ingredients, :class => :ingred %><br>';
   $('#addIngredient').click(function(e) {
    e.preventDefault();
     $(this).before(ingredient);

   })
  });

私はhtml5を使用してそれを行い、これを実行して動作させました

   $('document').ready(function() {

            var ingredient = '<input class="ingredients" name="ingredients" type="text" placeholder="Enter Ingredients Here"><br>';
             $('#addingredient').click(function(event) {
               event.preventDefault();
                $(this).before(ingredient);

                 })
               });

これを私のルビーフォームに合わせるのに苦労しています

現時点では、これをテキストフィールドではなくページに出力します

     <%= f.text_field :ingredients, :class => :ingred %>

誰でも助けることができますか?とても有難い

4

1 に答える 1

1

viewsRails では、これは、Railsアプリケーションのディレクトリ内のファイル(例: /myrailsapp/app/views/<controllername>) にあり、拡張子は .erb です。

上記のコードは、 <script> </script>呼び出されたビュー ファイル内のタグでラップする<action>.html.erbか、部分的にラップすることができます。たとえば、次を使用_beforeaction.js.erbしてメイン<action>.html.erbファイルにロードできます。

<%= render "beforeaction" %> 

(注:<action>は Rails コントローラーのアクションです)。

ここでガイドを読むことができます:

http://guides.rubyonrails.org/layouts_and_rendering.html

http://ruby.about.com/od/rails3tutorial/ss/Getting-Started-With-Rails-Views.htm

于 2012-11-02T22:32:23.407 に答える