gpt4 book ai didi

javascript - Ajax Live 搜索帖子到 Laravel View

转载 作者:可可西里 更新时间:2023-11-01 00:57:29 25 4
gpt4 key购买 nike

我正在从一个 View 中创建一个实时搜索,我想知道为什么我得到一个没有可用的响应数据,即使标题显示它在发布后发送数据。我的搜索栏在 templates/reports.blade.php 中:

           <div class="large-6 columns">
<input type="text" id="search-input" onkeyup="searchup()" onkeydown="searchdown()" placeholder="Search Recipient"></div>
<div id="search-results"></div>

js脚本是这样的:

var timer;
function searchup() {
timer = setTimeout(function()
{
var keywords = $('#search-input').val();
if (keywords.length > 0)
{
$.post('/reports/executeSearch', {keywords: keywords}, function(markup)
{
$('#search-results').html(markup);
});
}
}, 500);
}

function searchdown()
{
clearTimeout(timer);
}

我的路线是这样的:

    Route::group(['middleware' => ['web']], function () {
Route::resource('reports', 'ReportsController');
Route::post('reports/executeSearch', ['uses' => 'ReportsController@search']);
});

虽然我的 Controller 是这样的:

public function index()
{
// get all the reports
$reports = Reports::all();

// load the view and pass the reports
return View::make('templates.reports')
->with('reports', $reports);
}

public function search(Request $keyword)
{
$searchUsers = Recipients::where("name", "iLIKE", "%{$keyword->get('keywords')}%");
return View::make('templates.searchUsers')->with('searchUsers', $searchUsers);

}

如您所见,它将数据发送到 templates/searchUsers.blade.php,这是一个简单的循环:

@foreach($searchUsers as $key => $value)
<b>{{ $value->name }}</b>
<br>
@endforeach

但出于某种原因,它似乎没有附加到我的 reports.blade.php 中。我只是通过 js 插入它吗?

最佳答案

我认为这是因为您没有使用 get() 从查询构建器中获取集合。

尝试:

$searchUsers = Recipients::where("name", "iLIKE", "%{$keyword->get('keywords')}%")->get();

关于javascript - Ajax Live 搜索帖子到 Laravel View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37307963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com