当我尝试根据拉拉维尔弹出窗口中的 Id 获取详细信息时,出现错误



我正在根据 Id 在 laravel 的弹出窗口中单击按钮以获取用户的详细信息,但它显示一些错误。

这是viewuser.blade.php

<div class="modal fade" id="myModal">
    <div class="modal-dialog">
      <div class="modal-content">
        <!-- Modal Header -->
        <div class="modal-header">
          <h4 class="modal-title">Modal Heading</h4>
          <button type="button" class="close" data-dismiss="modal">&times;</button>
        </div>
        <!-- Modal body -->
        <div class="modal-body">
            <table class="table table-bordered"> 
                <tr>
                    <td>{{$usersview->id}}</td>
                    <td>{{$usersview->firstname}}</td>
                    <td>{{$usersview->filename}}</td>
                </tr>
            </table>
        </div>
        <!-- Modal footer -->
        <div class="modal-footer">
            <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
        </div>
      </div>
  </div>

这是viewparticipant.blade.php我有一个按钮View。当用户单击此按钮时,将打开一个弹出窗口,并根据 ID 显示详细信息。

<td>
    <a href="{{ URL::to('participant/show',$row->id) }}" class="btn btn-primary" data-toggle="modal" data-target="#myModal">View</a>
</td>

我的控制器:

 <?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use Session;
use AppImageupload;
 class ParticipantController extends Controller
 {
     public function show($id)
     { 
         $usersview = Imageupload::find($id);
         return View::make('viewuser', compact('usersview')); 
     }
 }

我的网络.php

Route::get('/participant/show/{id}','ParticipantController@show');

该错误显示模态中的未知变量。

好吧,

你的刀片文件中只有$usersview,你在viewparticipant.blade中调用$row->id.php,它应该是$usersview->id

编辑后 -->因此,您需要对要获取结果的函数进行 ajax 调用。ajax 必须包含用户的 ID,因此您应该以某种方式获取 ID。我通常定义一个点击函数并获取 id。 然后在同一点击触发 ajax 调用,如下所示:

$('#user').on('click', function (event) {
    $.ajax({
        url: '/users?user_id=' + $(this).val(),
        success: function (data) {
            // parse the data
        },
        fail: function () {
            // do something in case of failure
        }
    });
});

$(this(.val((; 是这里的 id,我假设你会把它存储在输入中

试试这个:

<td>
<a href="{{ URL::to('participant/show/{id}',$row->id) }}" class="btn btn-primary" data-toggle="modal" data-target="#myModal">View</a>
</td>

因为 laravel 正在弄清楚您要放置 $row->id 变量的位置,而我猜测它没有在您的路由中正确传递变量。

试试

@foreach($usersview as $usersview)
<tr>
 <td>{{$usersview->id}}</td>
 <td>{{$usersview->firstname}}</td>
 <td>{{$usersview->filename}}</td>
</tr>
@endforeach