在Laravel中显示 AJAX 成功的模态弹出窗口

dldeef67  于 2023-05-08  发布在  其他
关注(0)|答案(1)|浏览(170)

`在这里,我需要在image_upload表上显示图像的详细信息,同时单击显示按钮单击此按钮id传递

<a class="btn btn-info" href="" onclick="showuserimage({{$user->id}})">Show</a>

function showuserimage(id)
{
   $.ajaxSetup({
        headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });
      $.ajax({
        type:'POST',
       
        url: 'imageshow/{id}',
        data:{id:id},
        success:function(data){
       $("#getCode").html(data);
       $("#getCodeModal").modal("show");
       }
   });
}
Route::post('imageshow/{id}',[AuthController::class,'showimage']);

public function showimage(Request $request)
      {
        $id = $_POST['id'];
     
        $image= ImageUpload::whereId($id)->get();
       
        $result_data=array();
        foreach($image as $img)
        {
         // print_r($img['name']);
          $result_data['id']=$img['id'];
          $result_data['name']=$img['name'];
          $result_data['image_id']=$img['image_id'];
          $result_data['user_id']=$img['user_id'];
        
        }
        return $result_data;
 }

在控制台上得到错误,未捕获的XHR完成加载:POST期望显示弹出窗口`

gzjq41n4

gzjq41n41#

这里有几个错误:
1.你通过id的方式。目前,您通过URL和请求数据传递它。请选择一个。

  1. URL AJAX 错误我们传递的是文字{id},而不是变量id本身。如果你不在主页上,'imageshow/{id}'也是无效的,把斜杠放在前面。正确的URL是url: '/imageshow/' + id,
    1.控制器函数需要id参数。
    所以这是你的答案的一个解决方案:
<a class="btn btn-info" href="" onclick="showuserimage({{$user->id}})">Show</a>
function showuserimage(id)
{
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });
    
    $.ajax({
        type:'POST',
        url: '/imageshow/' + id,
        success:function(data){
            $("#getCode").html(data);
            $("#getCodeModal").modal("show");
        }
    });
}
Route::post('imageshow/{id}',[AuthController::class,'showimage']);
public function showimage(Request $request, $id)
{
    $image= ImageUpload::whereId($id)->get();

    $result_data=array();
    foreach($image as $img) {
        // print_r($img['name']);
        $result_data['id']=$img['id'];
        $result_data['name']=$img['name'];
        $result_data['image_id']=$img['image_id'];
        $result_data['user_id']=$img['user_id'];
    }
    return $result_data;
}

我真的建议你学习PHP,Javascript, AJAX 和Laravel的基础知识以及基本的调试技术。

相关问题