2

一連のフィールドをオンデマンドで動的に表示するように設定しようとしています。モデルには、次のフィールドがあります。

attr_accessible ... :instruct1, :instruct2, ... :instruct30

instruct30 がヒットするまでフィールドを 1 つ追加するボタンと、instruct 1 がヒットするまでフィールドを削除するボタンを使用して、フォームに instruct1 だけを表示したいと思います。AJAXの使用が含まれると思われるページを更新せずにすべてが発生するはずですが、似たようなものは見つかりませんでした。

私は似たようなものを探しましたが、モデルが修正されているため、探しているものではないネストされたフォームしか思いつきません。

4

1 に答える 1

6

作業の大部分はクライアント側で行われます。

フォーム フィールドを動的に追加および削除するには、javascript を使用する必要があります。Rails が最初のフィールド用に生成する HTML を確認し、それを複製して、たとえば jQuery を使用して追加のフィールドを追加します。

大まかな例:

$("#button").click(function() {
  $("#theForm")
    .append('<input id="instruct2" name="object[instruct2]" type="text">');
});

追加または削除したフィールドの数を追跡する必要があります。

于 2012-11-07T20:34:08.527 に答える