Tag: laravel

尝试发布AJAX请求时,POST 405(方法不允许) – Laravel 4

我试图发出一个简单的AJAX请求来填充Laravel中的菜单,但是,我在使其正常工作方面遇到了很多麻烦。 我不确定是什么问题,经过几个小时的搜索,我找不到任何有用的东西。 这是我的AJAX请求: $.ajax({ type: ‘POST’, url: ‘/ajax/populateApiAuth’, data: json, dataType: ‘JSON’, success: function (json) { alert(‘test’); return true; }, error: alert(‘fail’) }); 我的AJAX回调路线: Route::get(‘/ajax/populateApiAuth’, ‘ApiController@populateApiAuth’); 和我的控制器来处理ApiController中的AJAX回调: public function populateApiAuth() { return Response::json(array(‘msg’ => ‘test’); } 发送AJAX请求时,它返回错误参数中的失败消息,并在控制台中告诉我: POST http://localhost:8000/ajax/populateApiAuth 405 (Method Not Allowed) 研究此错误消息,是因为向其他域/服务器发出POST请求? 怎么会这样? 我试图使用AJAX请求的绝对URL: url: ‘{{ URL::to(“ajax/populateApiAuth”) }} 它给出了完整的URL: http://localhost:8000/ajax/populateApiAuth但这也没有解决问题。

Laravel,为选择下拉列表中的选项添加不同的html属性

有没有办法在下拉选择中使用刀片Form::select()将HTML属性添加到选项? 好吧,因为我需要这样的东西:(在option标签中添加不同的CSS类) blue red yellow UPDATE (CSS类名称不应与文本名称相同.css类来自数据库中的表。) colors-blue something-red banana is yellow 如果它只是一个CSS类添加到所有这些选项,我可以简单地使用jQuery。 但我需要添加多个。 PS:我将类名存储在数据库的表中。 从文档中 ,我看不到任何光明。 我也看过API。 更新2 (提供更多代码细节) // In my create view I have this: {{ Form::select( ‘colored_stuffs’, $colorsList, null, [‘id’=>’colored_stuffs’] ) }} // The $colorsList generate an array in the ColorsController@create public function getCreate() { $colorsList = $this->colors->listAll(); } // listAll() […]

AJAX与Laravel的分页

我有这个名为posts.blade.php视图,它包含在home.blade.php : @foreach ($posts as $post) thumbnail) }}” alt=”” /> {{{ $post->title }}} {{ $post->rating }} @endforeach {{{ $posts->links() }}} 当用户搜索某些post时,控制器的postSearch()函数返回一个JSON响应: function postSearch() { $posts = $posts->select(…)->where(…)->orderBy(…)->paginate(5); //Search posts return Response::json(View::make(‘includes.posts’, [‘posts’ => $posts])->render()); } 并且jQuery在#posts div上附加HTML: $(‘#search’).submit(function(e) { e.preventDefault(); var form = $(this); $.post(form.attr(‘action’), form.serialize(), function(data) { $(‘#posts’).html(data); }); }); 这很完美。 但现在当我点击分页链接时,页面重新加载,我的搜索结果消失了(显而易见)。 我如何分页这些post? 我已经读过这篇文章和本文,但我不明白如何实现它。 […]

当PUT通过AJAX用于Laravel资源时不允许的方法

我在routes.php中有这个资源: Route::resource(‘items’, ‘ItemsController’, [‘before’ => ‘admin_access’]); 试图通过AJAX到达ItemsContoller@update方法,但它正在推出405 Method not allowed错误: var $inputs = $(‘input’, row); var id = $(row).find(‘.edit’).data(‘id’); var data = $inputs.serializeJSON(); data[‘_token’] = $(‘input[name=_token]’).val(); data[‘_method’] = ‘PUT’; console.debug(data); $.ajax({ url: ‘items/’ + id, method: ‘PUT’, dataType: ‘json’, data: data, complete: function (data) { if (data.success) { itemsTable.ajax.reload(); } } }); id和data变量都包含正确的信息。 当我使用PUT作为方法(使用anahkiasen/Former opener方法)进行标准表单提交时,这很好用。 […]

在Laravel中使用Jquery获取base_url

我正在使用laravel 5.0。 我想使用jquery获取laravel页面的基本URL。 我试过以下function。 function getBaseURL () { return location.protocol + “//” + location.hostname + (location.port && “:” + location.port) + “/”; } 但是这只给出了http://localhost 。 我需要在jquery中使用我的完整基本URL。 该怎么办?

Laravel 5:Ajax Post 500(内部服务器错误)

我正在尝试通过ajax将数据提交到数据库。 提交文章页面没有ajax就可以正常工作。 我添加了console.log()只是为了看看是否有任何事情发生,但我得到了这个错误: POST http:// localhost / laravel-5 / public / articles / create 500(内部服务器错误) 我的代码出了什么问题? 是javascript还是控制器? 编辑:我在laravel.log得到这个 C:\ xampp \ htdocs \ laravel-5 \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Middleware \ VerifyCsrfToken.php中的exception’Illuminate \ Session \ TokenMismatchException’:53 路线 Route::resource(‘articles’, ‘ArticlesController’); 调节器 public function store(Requests\ArticleRequest $request) { […]

laravel 4持续存在数据 – jquery ajax提交

我在使用laravel 4.1会话时遇到了问题并且出现了意外行为。 根据我调用控制器方法的方式,会话可以工作或不工作我的应用程序调用POST路由 – 将项目添加到作为会话的购物车。 由于某种原因,会话没有得到更新。但是,如果我使用GET请求调用相同的函数,则函数按预期工作。 我的routes.php包含以下两条路线: Route::get(‘testAdd’, array(‘uses’ => ‘ProductsController@addToCart’)); Route::post(‘products/addToCart’, array(‘uses’ => ‘ProductsController@addToCart’)); 两者都指向相同的方法 该方法目前是这样的(用于测试): public function addToCart() { Session::put(“addcarttest”, “add to cart”); return json_encode(Session::get(‘addcarttest’)); } 如果我用POST方法调用该函数(带有表单数据),我会得到预期的结果和会话的内容。 但是,如果我然后检查会话(使用分析器)它不存在。 数据没有持续存在。 如果我然后使用GET路由调用相同的方法,我得到预期的结果,但重要的是会话仍然存在。 我想也许POST方法删除了会话但是一旦它存在就会停留在那里 – 如果我使用GET方法并且sessin存在,如果我再次尝试POST方法示例会话保持原位 – 所以POST方法不会删除会话。 这让我发疯了 – 我已经失去了很多时间,看不出原因。 我错过了Laravel处理POST v GET的方法吗? 为什么两种不同的方法会对底层函数产生影响? 我需要做什么才能使会话与POST一起正常工作? 更新: 我现在尝试了会话的数据库驱动程序,并获得了相同的行为。 我已经进一步测试了一个阶段 – 我创建了一个基本表单并提交给了url,并且该方法按预期工作。 我当前的表单数据由jquery ajax提交,并假设它们在behviour中完全相同。 我的jquery提交function是这样的: $.ajax({ url: […]

Laravel在ajax之后刷新数据

他目前正在研究必须过滤表中数据的代码。 Ajax将调用该链接并获得响应(json)结果。 但是,我遇到了一个问题。 我必须以某种方式呈现表格,我不想通过追加等来做到这一点。 我可以以某种方式再次生成视图或刀片文件? 默认视图是DefController @ index但是ajax使用url哪个控制器是DefController @ gettabledata。 public function gettabledata($id){ return response()->json(Def::find($id)->getallmy->all()); }

选择2 v4如何使用AJAX对结果进行分页

我正在尝试使用Select2 4.0分页结果(每25行),但我不知道如何实现它。 有人知道怎么做吗? 如果用户到达25行的末尾,并且如果有更多行,我想加载它并显示它。 这是我的HTML模板 {!! Form::select(‘breed_id’, $breeds, null, [‘class’ => ‘form-control’, ‘id’ =>’breed_id’] ) !!} 这是Select2的JavaScript。 $(“#breed_id”).select2({ placeholder: ‘Breed…’, width: ‘350px’, allowClear: true, ajax: { url: ”, dataType: ‘json’, data: function(params) { return { term: params.term } }, processResults: function (data, page) { return { results: data }; }, cache: true } }); 这是我的控制器代码 […]

Laravel和Infinite Scroll

我有一个关于laravel分页和无限滚动的问题: 首先,我有这个: @forelse($duels->results as $d) @include(‘versus.versus’) @empty @endforelse {{$duels->links()}} 我们可以看到,我有一个div #boxes,其中包含div .box。 分页由Laravel设置,看起来像这样: « Previous 1 2 Next » 所以现在,我想要一个无限卷轴而不是一个分页。 我应该如何使用https://github.com/paulirish/infinite-scroll ? 如果你有疑问,我留在这儿! PS:我尝试了一些东西,但没有一个像: $(‘#boxes’).infinitescroll({ loading: { finished: undefined, finishedMsg: “Congratulations, you’ve reached the end of the internet.”, msg: null, msgText: “Loading the next set of posts…”, selector: null, speed: ‘fast’, start: undefined }, state: […]