我是新手在Codeigniter所以我不知道如何做到這一點。
其實我的瀏覽頁面有五行,我通過for循環生成,其中每行包含兩個選擇框和兩個輸入框。我不知道如何在jQuery中得到這些值,然後傳入控制器。其實我知道如何從一個簡單的文本框中獲取值,但是因爲我在一個循環中生成了它們並給它們一個單獨的ID,所以我不知道如何在jQuery中獲取值然後傳遞給控制器。傳遞多個文本框值到控制器代碼點火器
這是我的看法
<tr>
<th>Category:</th>
<th>Items:</th>
<th>Selling Price:</th>
<th>quantity:</th>
</tr>
<?php for ($i = 0; $i < 5; $i++) {
?>
<tr> //Categories
<td><?php echo form_dropdown('cat_id', $records2, '#',
"id='category_".$i."' onchange='getItems(this.value,".$i.")' ");?>
</td>
<!-- Items -->
<td>form_dropdown('item_id', $records3, '#', "id='items_".$i."'"); ?> </td>
<!-- end of Items -->
<td> <?php echo form_input($price); ?></td>
<td><?php echo form_input($quantity); }?></td>
該項目的選項是基於類別的選擇,也就是說,如果我選擇類別的一些選項,然後對類的項目顯示在第二個選擇框。
這裏是我的JavaScript的頂部的兩個選擇框
功能<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>
現在的問題就在這裏;我想從所有行中獲取值,然後傳入控制器。
這是JavaScript捕然後再送價值到控制器
<script type="text/javascript">
$('#btns').click(function() { // $("#form").serialize()
在這裏,我沒有做正確的,第一我不知道如何讓項目的價值和類別這裏,然後另一件事是怎麼樣才能夠因爲有5行,並在其中值填充將被髮送
var item_id = $('#items').val();
var item_id = $('#items').val();
var price = $('#price').val();
var quantity = $('#quantity').val();
var form_data = {
cat_id: $('#cat_id').val(),
quantity: $('#quantity').val(),
item_id: $('#items').val(),
};
$.ajax({
url: "<?php echo site_url('salesController/addSales'); ?>",
type: 'POST',
data: form_data,
dataType: 'json',
success: function(msg) {
if(msg.res == 1)
{
alert("true");
}
else{
alert("false");
}
}
});
return false;
});
</script>
這裏是我的控制器textvalues獲得多個文本框的值,我不知道在這裏得到多個值也。
下面是我在做什麼的代碼,我知道我錯了,但我不知道如何作出正確
$data = array(
'cat_id' => $this->input->post('cat_id'),
'item_id' => $this->input->post('item_id'),
'price' => $this->input->post('sales_date'),
'quantity' => $this->input->post('sales_bill_no'),
);
然後我就試試這個,然後回答你,那麼jQuery函數這裏VAR ITEM_ID = $( '#項目')VAL()。在這裏,我做錯了,因爲我的項目ID不斷變化,並會像這樣item_0,item_1 .. 0如何在jQuery中抓住這個值? – user1972143
我已經更新了我的答案,修改瞭如何獲取表單數據:) –
thanksssssssss它的工作原理..你真棒.....除了數量和價格都沒有進入數據庫..所有工作正如你說的我已將價格和數量文本框的名稱更改爲價格[]和數量[] ..並且我在控制器中獲得價格和數量的價值'price'=> $ this-> input-> post('price') ..我在做對..我想我必須改變這個'價格'=> $ this-> input-> post('price []')我是對嗎? – user1972143