如何将所有数据从 html 表获取到控制器 [关闭]
Posted
技术标签:
【中文标题】如何将所有数据从 html 表获取到控制器 [关闭]【英文标题】:How to get all data from html table to controller [closed] 【发布时间】:2020-03-28 23:35:58 【问题描述】:我的视图中有一个包含多个 html 表的表单。如何通过请求将所有数据从 html 表中获取到我的控制器。以下代码是我的看法。
<table id="mastertree-table" class="table table-bordred table-striped">
<thead>
<th style="">Id</th>
<th>Introducer Id</th>
<th>Reference ID</th>
<th>Amount</th>
<th>Calculation</th>
<th style="text-align: right;">Percentage</th>
<th style="text-align: right;">Value</th>
</thead>
<tbody>
@foreach($TreePayroll as $row)
!! Form::open(array('method'=>'POST', 'route' => array('payroll.update',$approveMasterPayroll[0]->EmpId, $approveMasterPayroll[0]->FYId), 'class' => 'form-horizontal', 'id' => 'payroll-form')) !!
csrf_field()
<tr>
<td style="width: 80px; height: 5px">!! Form::text('PHId',$row->PHId, ['class'=>'form-control', 'readonly', 'style'=>'text-align:right;']) !!</td>
<td> $row->PayHead </td>
<td> $row->PayHeadType </td>
<td> $row->Computation </td>
<td> $row->Calculation </td>
<td style="width: 100px; height: 5px">!! Form::text('Rate',$row->Rate, ['class'=>'form-control', 'readonly', 'style'=>'text-align:right;']) !!</td>
@if($row->CalcId == 2)
<td style="width: 150px; height: 5px">!! Form::text('Value',$row->Value, ['class'=>'form-control', 'style'=>'text-align:right;']) !!</td>
@else
<td style="width: 150px; height: 5px">!! Form::text('Value',$row->Value, ['class'=>'form-control', 'readonly', 'style'=>'text-align:right;']) !!</td>
@endif
</tr>
!! Form::close() !!
@endforeach
</tbody>
</table>
【问题讨论】:
【参考方案1】:您可以使用 jquery 和 ajax 将表值发布到控制器...如下所示
var TableData;
TableData = saveTblValues()
TableData = $.toJSON(TableData);
function saveTblValues()
var TableData = new Array();
$('#your_table_id tr').each(function(row, tr)
TableData[row]=
"column1_name" : $(tr).find('td:eq(0)').text() //for first column value
, "column2_name" :$(tr).find('td:eq(1)').text() //for second column value
, "column3_name" : $(tr).find('td:eq(2)').text() //for third column value
, "column4_name" : $(tr).find('td:eq(3)').text() // for fourth column value
);
TableData.shift(); // first row will be empty - so remove
return TableData;
$.ajax(
type: "POST",
url: "your route URL",
data: "TableData=" + TableData,
success: function(data)
// return value
);
【讨论】:
以上是关于如何将所有数据从 html 表获取到控制器 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章