将多个文本框的值传递给CodeIgniter中的控制器
pass multiple textbox box values to controller in CodeIgniter
我想发送多个文本框值到CodeIgniter ..我不知道为什么这个代码不工作…
这是我的观点
<th>Items:</th>
<th>Price:</th>
<th>quantity:</th>
<th>total:</th>
</tr>
<?php for ($i = 0; $i < 5; $i++) {?>
<tr>
<td><?php echo form_dropdown('cat_id[]', $records2, '#',
"id='category_".$i."' onchange='getItems(this.value,".$i.")' ");?>
</td>
<!-- Items -->
<td> <?php echo form_dropdown('item_id[]', $records3, '#', "id='items_".$i."'"); ?>
</td>
项目下拉选项是针对类别…意思是如果我从类别中选择了一些东西那么项目就会显示在那个类别
<td><input type="text" name =<?php echo $price;?> id = "price_"<?php echo $i ?>>
</td>
<td><input type="text" name =<?php echo quantity;?> id = "price_"<?php echo $i ?>
我已经设置了价格和数量字段的名称为'price'和'quantity'
这是我的控制器。
$data3 = array(
'item_id' => $this->input->post('item_id'),
'price' => $this->input->post('price'),
'quantity' => $this->input->post('quantity'),
);
$data4 = array();
for($i = 0; $i < 5; $i++)
{
$data4 = array (
'item_id' => $data3['item_id'][$i],
'price' => $data3['price'][$i],
'quantity' => $data3['quantity'][$i],
);
}
$this->load->model('salesModel');
$this->salesModel->addSoldItemtoDB($data4);
问题是价格值"null"将进入数据库,数量也是如此,就item_id而言,无论我在item中选择什么,它都会在数据库中保存id"1"。
我的java脚本的功能上面的两个下拉框。分类和项目
<script type="text/javascript">
function getItems(category_id,index) {
$("#items_" + index + " > option").remove();
$.ajax({
type: "POST",
url: "stockInController/get_Items/"+category_id,
success: function(items)
{
$.each(items,function(item_id,item_name)
{
var opt = $('<option />');
opt.val(item_id);
opt.text(item_name);
$('#items_'+ index).append(opt);
});
}
});
}
</script>
您正在创建同名的文本框
<input type="text" name =<?php echo $price;?> id = "price_<?php echo $i ?>" >
<input type="text" name =<?php echo quantity;?> id = "price_<?php echo $i ?>" >
这意味着它将只接受最后一行的文本框值。它应该是这样的
<input type="text" name="prince_<?php echo $i;?>" id="price_<?php echo $i ?>" >
<input type="text" name="quantity_<?php echo $i;?>" id="quantity_<?php echo$i?>">
另一种方法是在文本框中创建数组
<input type="text" name="price[]" id = "price_<?php echo $i ?>" >
<input type="text" name="quantity[]" id = "quantity_<?php echo $i ?>" >
当你想要得到这些数组的值时。
$prices = $this->input->post('price');
$quantity= $this->input->post('quantity');
其中价格和数量为数组
相关文章:
- CodeIgniter:用于获取包括图像在内的值的控制器
- 有没有办法将值从JavaScript发送到CodeIgniter中的控制器
- 如何在codeigniter中的控制器索引中调用javascript函数
- Codeigniter Jquery Ajax,Can't将控制器中的数据访问回html表单
- 如何将表单值从jquery ajax传递到codeigniter控制器
- 如何使用javascript/jquery在CodeIgniter的控制器中调用函数
- Ajax 请求从 JavaScript 到 Codeigniter 控制器
- 有什么方法可以放置一个触发器来在 CodeIgniter 的控制器函数中切换引导模式
- 错误 JS 将发布数据发送到控制器 -CodeIgniter
- Codeigniter中不同控制器的不同JavaScript,JQuery或CSS
- CodeIgniter - 如何从控制器返回 Json 响应
- 从 CodeIgniter 控制器执行 Java 脚本代码
- 从获取输入值到codeigniter控制器,并在knockout.js中初始化
- 无法使用ajax将值传递给Codeigniter控制器
- 我们如何从codeigniter控制器方法调用javascript
- 如何将带有url的文本作为参数安全地传递给CodeIgniter控制器
- CodeIgniter控制器如何接受ajax post ?
- 如何将javascript变量传递给codeigniter控制器函数?
- 从jquery调用一个codeigniter控制器方法
- Ajax 发布到 CodeIgniter 控制器不起作用