每一行都有一个id,但id有可能不是连续的。。。
可以添加行、删除行、、
通过jquery获取表格中的数据。。。
var arr = new Array();
var first_id = $("#buy>tbody>tr:first").next().next().attr('id');
for(var j=0;j<rowspan;j++){
var buy_no = $('#'+first_id+' td[name="buy['+first_id+'][no]"]').text();
var buy_member_id = $('#'+first_id+' select[name="buy['+first_id+'][member_id]"]').val();
if(buy_member_id == undefined){
buy_member_id = $('#'+first_id+' select[name="buy['+first_id+'][member_id]"] > option:first').val();
};
var buy_member_name = $('#'+first_id+' select[name="buy['+first_id+'][member_id]"] > option[value="'+buy_member_id+'"]').text();
var buy_supplier_id = $('#'+first_id+' select[name="buy['+first_id+'][supplier_id]"]').val();
if(buy_supplier_id == undefined){
buy_supplier_id = $('#'+first_id+' select[name="buy['+first_id+'][supplier_id]"] > option:first').val();
};
var buy_supplier_name = $('#'+first_id+' select[name="buy['+first_id+'][supplier_id]"] > option[value="'+buy_supplier_id+'"]').text();
var buy_detail = $('#'+first_id+' input[name="buy['+first_id+'][detail]"]').val();
var buy_bprice = $('#'+first_id+' input[name="buy['+first_id+'][bprice]"]').val();
var buy_bnum = $('#'+first_id+' input[name="buy['+first_id+'][bnum]"]').val();
first_id = $('#'+first_id).next().attr('id');
arr[j] = {'no':buy_no,'member_id':buy_member_id,'member_name':buy_member_name,'supplier_id':buy_supplier_id,'supplier_name':buy_supplier_name,'detail':buy_detail,'bprice':buy_bprice,'bnum':buy_bnum};
}
传ajax
$.post(url,{data:JSON.stringify(arr)},function(result){
$('#back_'+sell_no+'').replaceWith(result);
});
php接收处理数据
$arr = (array)(json_decode(str_replace('\"','"',$_POST['data']),true));
可以通过表单序列化传递数据。
var params = $("form[name='buy']").serialize();
在php端处理后输出数据,可以是数组
json_encode($data);
补部分表格html代码(有smarty)
<table id="buy" class="buy">
<tr>
<th colspan="8" style="text-align:left">采购</th>
<th colspan="2"><input type="button" name="button" value="add" οnclick="addSell('buy');" /></th>
</tr>
<tr>
<th>No.</th><th>仕入担当</th><th>供应商</th><th>详细</th><th>单价</th><th>数量</th><th>合计</th><th>租利</th><th>租利率</th><th>操作</th>
</tr>
<{assign var="i" value="0"}>
<{foreach from=$buy_all item=buy name=buy}>
<tr id="<{$i}>">
<input type="hidden" name="buy[<{$i}>][buy_id]" value="<{$buy.buy_id}>" />
<td class='b' name="buy[<{$i}>][no]"><{$sell.sell_no}></td>
<td>
<select name="buy[<{$i}>][member_id]">
<{foreach from=$member_list item=member name=member}>
<{if $buy.buy_member_id eq $member.member_id}>
<option value="<{$member.member_id}>" selected><{$member.member_name}></option>
<{else}>
<option value="<{$member.member_id}>"><{$member.member_name}></option>
<{/if}>
<{/foreach}>
</select>
</td>
<td>
<select name="buy[<{$i}>][supplier_id]">
<{foreach from=$supplier_list item=supplier name=supplier}>
<{if $buy.buy_supplier_id eq $supplier.supplier_id}>
<option value="<{$supplier.supplier_id}>" selected><{$supplier.supplier_name}></option>
<{else}>
<option value="<{$supplier.supplier_id}>"><{$supplier.supplier_name}></option>
<{/if}>
<{/foreach}>
</select>
</td>
<td><input type="text" size="10" name="buy[<{$i}>][detail]" value="<{$buy.buy_detail}>" /></td>
<td><input type="text" size="5" class="b" name="buy[<{$i}>][bprice]" value="<{$buy.buy_bprice}>" /></td>
<td><input type="text" size="5" class="b" name="buy[<{$i}>][bnum]" value="<{$buy.buy_bnum}>" /></td>
<td class="b" name="buy[<{$i}>][result]"><{($buy.buy_bnum*$buy.buy_bprice)|string_format:'%.2f'}></td>
<td class="b" name="buy[<{$i}>][li]">
<{($sell.sell_sprice*$buy.buy_bnum - $buy.buy_bprice*$buy.buy_bnum)|string_format:'%.2f'}>
</td>
<td class="b" name="buy[<{$i}>][li_lv]">
<{((1-($buy.buy_bprice*$buy.buy_bnum/($sell.sell_sprice*$buy.buy_bnum)))*100)|string_format:'%.2f'}>%
</td>
<td>
<input type="button" name="button" value="del" οnclick="delSell(<{$i}>);" />
</td>
</tr>
<{$i = $i + 1}>
<{/foreach}>
</table>