他目前正在编写必须过滤表中数据的代码。 Ajax 将调用该链接并获取带有答案的响应 (json) 结果。但是,我遇到了一个问题。我必须以某种方式呈现表格,我不想通过追加等方式来完成此操作。
我能否以某种方式再次生成 View 或 Blade 文件?
默认 View 是 DefController@index 但 ajax 使用 Controller 是 DefController@gettabledata 的 url。
public function gettabledata($id){
return response()->json(Def::find($id)->getallmy->all());
}
最佳答案
您可以将模板中与表格相对应的部分放在单独的 .blade.php
文件中,并将其@include
放在您的主布局中。
main.blade.php
:
<html>
...
<body>
<div class="table-container">
@include('table')
</div>
</body>
...
和
table.blade.php
:
<table>
@foreach($rows as $row)
<tr>
<td> $row->title ... </td>
</tr>
@endforeach
</table>
通过这种方式,您可以使用一个简单的 jQuery $('div.table-container').load(url)
并且在您的服务器上只需将该部分作为 html 字符串呈现和响应。 返回 View ('table', $data)
Javascript:
function refreshTable() {
$('div.table-container').fadeOut();
$('div.table-container').load(url, function() {
$('div.table-container').fadeIn();
});
}
关于javascript - ajax后Laravel刷新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37690068/