Laravel为html表单提供了一个独特的URL

时间:2017-09-15 22:50:00

标签: php html laravel blade

在我的刀片中,我有一个名为$jobs的字段。我正在尝试根据$job->id为每个表单提供一个唯一的URL。所以url是jobs / $ job-> id。但是,当我点击标签以提交表单时,所有网址都会显示作业/最后一个$ job-> id。在我的情况下,所有网址都显示job/386。我应该怎么做每个网址都有一个独特的网址?这是我的代码。

@foreach($jobs as $job)
    <form method="post" action="{{url('jobs/'. $job->id)}}" id="start-jobs">
                  {{csrf_field()}}
       <a onclick="document.getElementById('start-jobs').submit()">( start )</a>
    </form>
@endforeach

1 个答案:

答案 0 :(得分:1)

这实际上是一个JavaScript问题,而不是Laravel问题。

您的所有表单都具有相同的ID(实际上并非有效的HTML),这就是getElementById('start-jobs')为您提供最后一个ID的原因。如果您需要拥有所有表单的标识符,请使用class代替id

您似乎应该只使用常规提交按钮,而不是您正在使用的提交链接。

@foreach($jobs as $job)
    <form method="post" action="{{url('jobs/'. $job->id)}}" class="start-jobs">
                  {{csrf_field()}}
       <input type="submit" value="( start )">
    </form>
@endforeach