Ajax搜索栏与Laravel8不起作用
创始人
2024-08-04 14:31:36
0
  1. 确定你的路由配置是否正确。例如,如果你正在使用POST请求,则需要在web.php文件中将其配置为POST。
  2. 确认你的控制器和Laravel模型是否正确配置。确保它们都在正确的目录中,并遵循Laravel的命名约定。
  3. 确认你在视图中正确引入jQuery和bootstrap相关文件。如果你的样式或脚本没有被正确加载,这可能会导致搜索栏不起作用。
  4. 再次检查你的Ajax代码是否正确。确保你发送正确格式的数据,并且返回正确格式的响应。以下是一个示例:
# 路由配置
Route::post('/search', [SearchController::class, 'search'])->name('search');

# 控制器代码
public function search(Request $request)
{
    $query = $request->get('query');
    $results = DB::table('users')->where('name', 'like', '%' . $query . '%')->get();
    return response()->json($results);
}

# Ajax代码
$(document).ready(function() {
    $('#search-form').on('submit', function(e) {
        e.preventDefault();
        var query = $('#search-box').val();
        $.ajax({
            type: 'POST',
            url: '{{ route('search') }}',
            data: { query: query },
            success: function(data) {
                $('#results').html('');
                $.each(data, function(i, item) {
                    $('#results').append('
  • ' + item.name + '
  • '); }); } }); }); });

    在上面的代码示例中,我们首先定义了一个名为“搜索”的路由,然后在控制器中获取用户输入的搜索查询,并使用查询构建器返回符合条件的结果。最后,我们使用response()->json()方法将结果转换为JSON格式并发送回Ajax请求。在Ajax代码中,我们监听了search-form表单的submit事件,并阻止了默认行为。然后,我们获取用户输入的搜索查询,并将其作为数据发送到搜索路由。如果成功,我们遍历返回的数据,并将每个结果追加到#results元素中。

    相关内容

    热门资讯

    Android Studio ... 要解决Android Studio 4无法检测到Java代码,无法打开SDK管理器和设置的问题,可以...
    安装tensorflow mo... 要安装tensorflow models object-detection软件包和pandas的每个...
    安装了Laravelbackp... 检查是否创建了以下自定义文件并进行正确的配置config/backpack/base.phpconf...
    安装了centos后会占用多少... 安装了CentOS后会占用多少内存取决于多个因素,例如安装的软件包、系统配置和运行的服务等。通常情况...
    按照Laravel方式通过Pr... 在Laravel中,我们可以通过定义关系和使用查询构建器来选择模型。首先,我们需要定义Profile...
    按照分类ID显示Django子... 在Django中,可以使用filter函数根据分类ID来筛选子类别。以下是一个示例代码:首先,假设你...
    Android Studio ... 要给出包含代码示例的解决方法,我们可以使用Markdown语法来展示代码。下面是一个示例解决方案,其...
    Android Retrofi... 问题描述:在使用Android Retrofit进行GET调用时,获取的响应为空,即使服务器返回了正...
    Alexa技能在返回响应后出现... 在开发Alexa技能时,如果在返回响应后出现问题,可以按照以下步骤进行排查和解决。检查代码中的错误处...
    Airflow Dag文件夹 ... 要忽略Airflow中的笔记本检查点,可以在DAG文件夹中使用以下代码示例:from airflow...