2012-11-07 80 views
2

我試圖設置一組字段以根據需要動態顯示。在模型中,我有以下字段:rails form dynamic fields動態添加字段

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

我想顯示的形式只是一個按鈕instruct1添加1個更多的領域,直到instruct30命中和按鈕來刪除一個,直到誨1被擊中。所有應該沒有刷新頁面,我認爲會包括一些使用AJAX,但我找不到任何相似的東西。

我已經搜索了類似的東西,但只能夠想出嵌套的形式,這不是我正在尋找的模型是固定的。

+0

我想如果你建立兩個模型 - 無論這個模型是什麼,以及一個指令模型,你會找到你要找的。這兩者在簡單的'has_many'和'belongs_to'中相關。通過這種方式,您的每個基礎模型都將擁有一組指令。 –

回答

6

您的大部分工作將在客戶端。

要動態添加和刪除表單域,您必須使用javascript。 查看Rails爲第一個字段生成的HTML,複製並添加使用例如jQuery的其他字段。

粗例如:

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

你不得不跟蹤你有多少個字段添加或刪除。