我在HTML页面中有三个输入类型的文本和一个按钮,如果点击则复制每个文本框(Javascript)使它们成为6。
<input type="text" name="category[]">
<input type="text" name="quantity[]">
<input type="text" name="amount[]">
<button>Add more</button>
再次生成相同的输入:
<input type="text" name="category[]">
<input type="text" name="quantity[]">
<input type="text" name="amount[]">
Cakephp中的一段代码我一直在尝试:
$data = $this->request->data;
foreach($data['category'] as $index => $value){
$this->ModelName->save($value);
}
尝试一次插入两行,数量,类别和金额为列。但它不是插入而不是给出任何错误。
有没有办法实现这个目标? 感谢。
答案 0 :(得分:0)
我不确定您的模型在cakephp中是如何工作的,但您应该能够获得完整的数据分组,如:
foreach($data['category'] as $index => $value){
$category = $value
$quantity = $data['quantity'][$index];
$amount = $data['amount'][$index];
// use the above 3 variables however you need to to persist the model
//$this->ModelName->save($value);
}
另外,您可能需要考虑将html输入重新排序为:
<input type="text" name="item[0][category]">
<input type="text" name="item[0][quantity]">
<input type="text" name="item[0][amount]">
然后维护下一个索引,为每个附加组增加item
的数字索引
这将允许您迭代:
foreach($data['item'] as $index => $group){
//$group['category'];
//$group['quantity'];
//$group['amount'];
}