javascript - laravel用ajax没有反应
高洛峰
高洛峰 2017-05-24 11:32:29
0
3
610
@extends('layouts.app')

@section('content')
{{--<p>{{$news}}</p>--}}
<p class="container">
    <p class="col-lg-2"></p>
    <p class="col-lg-8" id="test">
        <p class="form">
            <input type="text" name="title" id="title" class="form-control">
            <textarea name="tcontent" id="tcontent" cols="30" rows="10" class="form-control"></textarea>
            <button id="submit" class="btn-primary">提交</button>
        </p>

        <p id="test1"></p>
    </p>
</p>
<script type="text/javascript">
    $(document).ready(function (){
        $('submit').click(function (){
            var data = {
                title: $('#title').val(),
                tcontent: $('#tcontent').val()
            };
            $.ajax({
                type: "post",
                url: 'news/news',
                data: data,
                dataType: 'json',
                headers: {
                    'X-CSRF-TOKEN': '{{csrf_token()}}'
                },
                success: function(data){
                    console.log(data);
                    var test1 = '<h1> add success</h1>';
                    console.log(test1);
                    $('#test').append(test1);
                },
                error: function (data){
                    console.log(data);
                    var test1 = '<h1>add faild</h1>';
                    console.log(test1);
                    $('#test').append(test1);
                }
            });
        });
    });
</script>
@endsection
    public function store(Request $request)
    {
        $user = Auth::user();
        $this->validate($request,[
            'title'=>'required',
            'tcontent'=>'required'
        ]);

        $news = new News();
        $news->title = $request->get('title');
        $news->content = $request->get('tcontent');
        $news->author = $user->name;
        $news->save();

        return $news;
    }
Auth::routes();

Route::get('/','HomeController@index')->name('home.page');

Route::group(['prefix'=>'back'], function (){
    Route::resource('/news/news','News\NewsController');
    Route::group(['prefix'=>'commodity', 'namespace'=>'commodity'], function (){
        Route::resource('/classify','ClassifyController');
        Route::resource('/commodity','CommodityController');
    });
});

代码如上,点击提交按钮没有任何反应,数据库中也没有插入记录,jQuery也已经在母页面header里引入了,页面代码、控制器、路由设置如上,我实在不知道哪里出问题了,请大神们解答

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(3)
Peter_Zhu

问题已解决
1.$('submit')少了个#号,没有取到,应该是$('#submit')
2.url应该是 /back/news/news

PHPzhong

url写错了。
另外,打开console.log看一下报错就可以搞定了。

漂亮男人

应该是js没有获取到点击或者提交的对象。遇到ajax的问题,一般要看控制台,network,分析是否有网络请求,以及请求和响应的信息。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板