如何使用ajax jquery保存每个表行中的每个数据 我有这张桌子
我希望在我的sql数据库中将其保存为相同或至少只获取每个表行并将其循环到每个行数 假设我将保存行引用ID 1中的所有值。这是怎么回事? 我想将整个数据保存为与其输出相同 到目前为止,我在所有datacell中都获得了所有价值。
使用此代码
$('table tr td').each(function(){
arr.push($(this).text());
});
$.each(arr,function(index,value){
alert(arr[index]);
});
答案 0 :(得分:1)
我可以给你另一个解决方案
1.将数据保存在数组中
2.转换为JSON字符串。
3.使用 NewtonSoft 库将JSON字符串转换为DataSet。
现在您可以将DataSet保存到数据库中(使用存储过程进行保存)
*优点是您可以在一次通话中保存整个表格。
答案 1 :(得分:0)
您可以这样使用:
<table id="testTable">
<tr><td>Name</td><td>Class</td></tr>
<tr><td>Test Name 1</td><td>Class 1</td></tr>
<tr><td>Test Name 2</td><td>Class 2</td></tr>
<tr><td>Test Name 3</td><td>Class 3</td></tr>
<tr><td>Test Name 4</td><td>Class 4</td></tr>
</table>
<script>
$(document).ready(function(){
headings=[];
tableRowData=[];
$('#testTable tr').eq(0).each(function(){
$(this).find('td').each(function(){
tdText=$(this).text();
headings.push(tdText);
});
});
tableRowData=[];
$.each(headings , function(i, val) {
tableRowData[i]=[];
});
$('#testTable tr').not(':first').each(function(){
i=0;
$(this).find('td').each(function(){
tdText=$(this).text();
tableRowData[i].push(tdText);
i++;
});
});
console.log(headings);
console.log(tableRowData);
$.ajax({
url: 'test.php',
type: 'get',
async: false,
data: {headings:headings,tableRowData:tableRowData,},
success: function(response_msg){
//Success
},
error:function(){
alert('Failure, some problem');
}
});
});
</script>
这样可以以Array的形式将表数据传递到PHP服务器页面, 标题和地图的映射标题数据可以使用两个数组的键完成。