jquery - 使用 AJAX 和 Laravel GET 请求不起作用
问题描述
我想要做的是@yield('somecontent.content')
动态加载主布局。仅出于提供信息的目的,我有以下内容:
控制器:
public function someFunction()
{
//DB logic here
return view('/exampleView')
->with($dataset1)
->with($dataset2)
->with($dataset3)
->with($dataset4);
}
路线:
Route::get('someRoute', ['as' => 'theRoute', 'uses' => 'someController@someFunction']);
ajax/jquery 功能:
$(document).ready(function(){
$('.ajaxClick').click(function(event){
//event.preventDefault();
$.ajax(
type: 'GET',
url: 'theRoute',
datatype: 'json',
success: function(data){
console.log('AJAX loaded something');
},
error: function(){
console.log('AJAX load did not work');
}
});
});
});
查看逻辑:
<a class="ajaxClick" data-name="{{
route('theRoute') }}" href="#">Testing Ajax</a>
在 a 标签中,我有最初可以工作的路线,但会刷新页面并且不刷新就不会加载。
它的流程是,单击导航栏中的链接,然后在一个设置字段中动态加载 Laravel 路由,该字段分配给视图以使用@yield('somecontent')
.
还有一个问题是,你将如何在 Laravel 中实现它?如果还需要什么评论。
谢谢!
PS 这个仪表板示例几乎是我想要做的,内容如何在不刷新页面的情况下立即加载。
解决方案
如果你仍然想使用 jQuery,你可以使用这样的东西:
$(document).ready(function(){
$('.ajaxClick').click(function(event){
//event.preventDefault();
$.ajax({
type: 'GET',
url: 'theRoute',
datatype: 'json',
success: function(data){
$('#main-wrapper').html(data);
},
error: function(){
console.log('AJAX load did not work');
}
});
});
});
我建议你尝试学习 javascript 框架。您发送的链接是使用 Angular JS,并且您需要的功能内置在其中,称为 SPA 或单页应用程序
JS框架不完整列表:
- 角
- 反应
- Vue
推荐阅读
- mongodb - 如何在 MongoDB 中将变量作为列值传递
- flutter - 如何回收清单
指数? - node.js - 如何使用 Heroku 部署修复 Not Found 错误
- cuda - 使用“nvidia-smi”和“nvcc -V”检查 CUDA 版本给出不同的结果
- html - 如何将“shape-outside” div 浮动到位于父容器底部的文本左侧?
- flutter - GridView 项目选择颜色更改
- javascript - react-table 失去了对过滤器的关注?
- c# - 在 C# 中写入文件时删除最后一个字符(退格)
- javascript - 来自 iframe 的搜索查询跟踪
- python - 如何使用 python 枕头在图像上添加段落并在中心对齐文本?