領収書を作成する必要があります。 ユーザーは、さまざまな数の成分からなる新製品を作成することができます。CakePHP:必要に応じてテーブルの新しい行を追加します
Iは入力をレイアウトするテーブルを使用して、各行に次のコードで生成された既存の成分の選択リストがあるている:次のHTMLを生成
<?php echo $this->Form->input('Receipt.0.ingredient_id', array('label' => false,'div' => false, 'class' => ''));
<select id="Receipt0IngredientId" class="" name="data[Receipt][0][ingredient_id]">
<option value="1">Ingredient B</option>
<option value="3">Ingredient B</option>
<option value="4">Ingredient B</option>
</select>
と、必要な成分の量を入力する別のフィールド。
<?php echo $this->Form->input('Receipt.0.amount', array('label' => false,'div' => false, 'class' => '')); ?>
事は食材の種類は、製品によって異なりますと、現在、私は、ユーザーが新しい行のボタンを追加クリックしたときに新しい行を追加するためにはjQueryを使用していますが、私は名前の値を変更する方法を知りませんで各フィールド jQueryのコードの:
$("#addNewLine").click(function() {
$('#add_ingredient tbody>tr:last').clone(true).insertAfter('#add_ingredient tbody>tr:last');
return false;
});
私は、これはこれを実装するための最良の方法であるかはわかりません。助けや助言をいただければ幸いです。
を選択ボックスのHTMLを追加し、その後、
を使用して、HTML内のセレクトボックスの
まず計算回数、これを試してみてください式)。変更する必要があるのは、新しく追加された行の名前の値です。名前= "data [Receipt] [0] [ingredient_id]は2番目のインデックスをカウントアップします – dadi