Ajax(在Laravel项目中)不在页面上工作,而在另一个页面上工作相同的代码

时间:2016-05-25 11:59:04

标签: jquery ajax laravel

我是编码新手。在 Laravel 5.2 项目中的 Ajax 代码中遇到一些问题。

该代码在注册页面上运行,但不在另一页,我需要做的事情。

请帮帮我。

路线 -

Route::post('like-article',['as'=>'like_article','uses'=>'LikeController@likeArticle']);

控制器 -

public function likeArticle(){
    $like_article_id = trim(Input::get('like_article_id'));
    $article_count = DB::table('articles')
            ->where('id',$like_article_id)
            ->count();
    if($article_count){
        return "1";
    }
    else{
        return "0";
    }                
}

Ajax部分 -



$("#like_thumb_up_img").click(function() {
    //alert('Alert !');
    $.ajax({
        url : 'like-article',
        type:'post',
        dataType:'HTML',
        data : {like_article_id:$('#like_article_id').attr('value')},
        success:function(result){
            //alert(result);
            if(result=="1")
            {
                $('#like_show_div').html('Got Article !');
            }
            else if(result=="0")
            {
                $('#like_show_div').html('Not Found !');
            }
        }
    })
})

<div class="row">
    <input type="hidden" id="like_article_id" value="{{$article[0]->id}}">
    <img id="like_thumb_up_img" class="img-responsive custom_margin_auto custom_margin_top_bottom_5" src="{{URL::asset('system_images/thumb_up.png')}}" alt="Thumb up">
</div>
<div id="like_show_div" class="row">
</div>
&#13;
&#13;
&#13;

提前感谢您找到错误。

3 个答案:

答案 0 :(得分:0)

在你的ajax部分

#!/bin/sh
printf "Content-Type: text/plain\n\n"
echo -n " Starting"
./1.script.sh
./cgi.cgi

最后如果错误是500,你应该将_token添加到你的帖子方法

答案 1 :(得分:0)

使用url()secure_url()(如果您拥有ssl证书)功能更改您的网址

$("#like_thumb_up_img").click(function(e) {
 e.preventDefault();
 var like_article = $('#like_article_id').attr('value');
$.ajax({
    url : "{{url('like-article')}}",
    type:'post',
    dataType:'HTML',
    data : {like_article_id:like_article},
    success:function(result){
        //alert(result);
        if(result=="1")
        {
            $('#like_show_div').html('Got Article !');
        }
        else if(result=="0")
        {
            $('#like_show_div').html('Not Found !');
        }
         }
       })
      })

答案 2 :(得分:0)

必须记住,当您在laravel中发送ajax请求时,请始终使用此代码来防止csrf令牌错误:

headers: {
                    'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
                }
相关问题