2014-01-24 83 views
0

我得到ListItem。我使用Javascript動態添加Iteminput以便將它們中的多個添加到單個List。這些輸入應該有什麼name,或者CakePHP如何通過這種方式創建HABTM關係?CakePHP添加多個HABTM

編輯:所以我看,要做到這一點的方式是我的名字輸入ItemItem.0.idItem.1.id

由於我使用JavaScript,我沒有看到一個方法,我可以按下按鈕時動態地使用$this->Form->input('Item.0.id');進行輸入,我可以得到一些建議嗎?

+0

也許我的問題幫助你http://stackoverflow.com/questions/15937068/trying-to-save-a-hasmany-array-from-multiple-select –

+0

我不明白。每個動態添加的項目都應該命名爲Item.0.id? –

回答

0

HABTM關係被保存的ID

的數值數組

所以,你的投入應該是Item.0和Item.1用的ID作爲值。

要做到這一點動態地使用JavaScript,你需要創建輸入自己,這是不難CakePHP的只是使用的名稱「數據[產品型號] [關鍵]」

下面是一個例子:

var index = 0; 

$('buttonToClick').on('click', function(){ 
    var stringInput = '<input class="itemInput" name="data[Item][' + index + ']"/>'; 
    $('itemInput:last-child').after(stringInput); 
}); 
+0

剛剛意識到您可能正在使用一個選擇列表,因此您可能需要使用FormHelper生成第一個列表,然後使用jQuery的克隆方法來複制它,更改name屬性,然後將其放在當前列表的後面。 – user2414000