我需要帮助弄清楚如何将表格行中的数据提交到PHP中进行处理。我需要它能够提交多行数据。有什么想法吗?
我有一张桌子here。我希望能够检查行并将数据提交给php来处理数据。这是一个HTML表格。我只是想知道如何将变量传递给php,例如数组或其他东西
好的家伙是这样的:
$("submit_btn").click(function () {
$('#diary tbody>tr input:checked').each(function() {
$.post('process.php',
data: "an array",
success: "data submitted");
}
});
如何获取数组中的表行数据以提交它? (答案如下)
好的第2部分:
将表行数据发送到php。
jQuery代码:
rows = JSON.stringify(rows); // submit this using $.post(...)
alert(rows);
$.post('classes/process.php', rows, function(data) {
$('#results').html(data);
})
.error(function() { alert("error"); })
});
PHP代码:
<?php
$rowsArray = json_decode($_POST['rows']);
echo $rowsArray;
?>
错误:
Notice: Undefined index: rows in C:\...\classes\process.php on line 6
答案 0 :(得分:2)
$('#submit_btn').click(function(){
var rows = [];
$('#box-table-a tbody tr input[type=checkbox]:checked').each(function(i,v){
var tds = $(v).parents('tr').children('td');
rows.push({
'name': tds.eq(1).find('select').val(),
'units': tds.eq(2).text(),
'calories': tds.eq(3).text(),
'sugar': tds.eq(4).text()
});
});
rows = JSON.stringify(rows); // submit this using $.post(...)
$.post('classes/process.php', {'rows': rows}, function(data){
console.log(data);
});
});
使用$ .post()提交rows
然后,在服务器端,您可以使用json_decode()
转换回数组;
示例输出:
[{ “名称”: “水”, “单元”: “1”, “热量”: “2”, “糖”: “3”},{ “名称”: “食品”, “单元” : “4”, “热量”: “5”, “糖”: “6”}]
<强>演示:强>
http://jsfiddle.net/cp6ne/84/
答案 1 :(得分:-1)
您可以使用jQuery库向PHP脚本发出AJAX请求,然后“处理”表中的数据。
您还可以使用jQuery .each()函数在多行上执行此操作。