为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Laravel 中将单选按钮值作为路由参数传递?

如何在 Laravel 中将单选按钮值作为路由参数传递?

回首忆惘然 2023-12-04 16:38:48
我想将选定的单选按钮值作为 Laravel 路由的参数传递。我的路线是:Route::resource('/datas','DataController');从这条路线,我的目标是调用 localhost:8000/datas/{data}我的 data.blade.php 是:<form id="dataform" action="{{ route('datas.show')}}" method="GET">   <table class="table">      <tr>         <th>Select bullet</th>         <th>SL NO</th>         <th>Name</th>         <th>Age</th>      </tr>      @foreach ($datas $key => $data)         <tr>            <td><input type="radio" id="data{{$data->id}}" name="data" value={{$data->id}}></option></td>            <td>{{$key}}</td>            <td>{{$data->name}}</td>            <td>{{$data->age}}</td>         </tr>      @endforeach   </table>   <button type="submit" id="edit_submit" class="btn btn-default">Show</button>                    </form>我的表演功能将是...public function show($id)   {      //Code to showing data and redirect to show page   }我想获取此单选按钮的值(如下所示)。<td><input type="radio" id="data{{$data->id}}" name="data" value={{$data->id}}>并将其作为参数包含在下面的表单操作中<form id="dataform" action="{{ route('datas.show')}}" method="GET">
查看完整描述

2 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

我对此代码做了一些更改。将按钮更改为锚标记。所以我的blade.php是:-


   <table class="table">

      <tr>

         <th>Select bullet</th>

         <th>SL NO</th>

         <th>Name</th>

         <th>Age</th>

      </tr>

      @foreach ($datas $key => $data)

         <tr>

            <td><input type="radio" id="data{{$data->id}}" name="data" value={{$data->id}}></option></td>

            <td>{{$key}}</td>

            <td>{{$data->name}}</td>

            <td>{{$data->age}}</td>

         </tr>

      @endforeach

   </table>

   <a  href="javascript:showfunction()" id="showlink" class="btn btn-default">Show</a>

我还添加了一个 javascript 函数。


<script>

    function showfunction(){

       var id = document.querySelector('input[name = "data"]:checked').value;

       var url = '{{route("admin.questions.show",":id")}}';

       url=url.replace(':id',id);

       document.location.href=url;

    }

</script>


查看完整回答
反对 回复 2023-12-04
?
阿晨1998

TA贡献2037条经验 获得超6个赞

仅使用 HTML/Blade 无法实现这一点。您需要 javascript(或 javascript 框架)才能使实时更改生效,因为表单操作路径中的参数取决于所选单选的值。

action="{{ route('datas.show', [ 'id' => [insert id here] ])}}"


查看完整回答
反对 回复 2023-12-04
  • 2 回答
  • 0 关注
  • 99 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信