Laravel多个表单只有一个提交按钮?

时间:2016-06-26 23:33:27

标签: php laravel

我有一个可以编辑多个表中多个区域的表单,但除非每个表单中都有一个提交按钮,否则它不起作用,有没有办法用一个提交按钮执行此操作?

    {!!Form::model($pregunta,['route'=>['seleccion.update',$pregunta->id],'method'=>'PUT','files' => true])!!}
    {!!Form::label('categoria','Categoria: ')!!}
      {!!Form::select('categorias_id', $categoria,null,['id'=>'categoriaSelSimple','class'=>'form-control',
                                            'placeholder'=>'Seleccione una opcion..','required'])!!}<br>
      {!!Form::label('subcategoria','Sub-categoria: ')!!}
      {!!Form::select('sub_categorias_id', $subcategoria,null,['id'=>'subcategoriaSelSimple','class'=>'form-control',
                                            'placeholder'=>'Seleccione una opcion..','required'])!!}<br>
    @foreach($opcion as $key => $value)
        {!!Form::model($value,['route'=>['opciones.update',$value->id],'method'=>'PUT'])!!}
        <div class="form-group option-container">
            <div class="input-group ">
              @if($value->correcto == 1)
                <span class="input-group-addon">
                  {!!Form::select('correcto[]', ['0' => 'Incorrecto','1' => 'Correcto'])!!}
                </span>
              @else
                <span class="input-group-addon">
                  {!!Form::select('correcto[]', ['1' => 'Correcto','0' => 'Incorrecto'])!!}
                </span>
              @endif
                {!!Form::text('opcion[]',$value->opcion,['class'=>'form-control']) !!}
                {{-- {!!Form::text('opcion[]',null,['class'=>'form-control', 'placeholder'=>'Ingresa una opcion..'])!!} --}}
              <span opcion-id="{{$value->id}}" class="input-group-btn">
                  <button class="btn btn-outline btn-danger btn-remove" type="button">X</button>
              </span>
            </div>
        </div>
        {{Form::close()}}
      @endforeach
                        <button type="button" class="btn btn-outline btn-success btn-lg btn-block btn-add-more-options">Agregar opción</button>
                        <h1 class="page-header"></h1>
                        {!!Form::submit('Actualizar',['class'=>'btn btn-outline btn-primary'])!!}

        </div>

    <!-- /.col-lg-8 -->
    <!-- /.col-lg-4 -->
</div>
{!!Form::close()!!}

我有多个表单,一个主要和其他通过foreach添加(有多少取决于表),所以我需要更新foreach生成的这些字段但它不起作用因为我没有提交按钮对于每种形式,我该怎么做?

1 个答案:

答案 0 :(得分:1)

仅使用HTML,不能使用单个提交按钮提交多个表单。

这可以使用一些JavaScript来完成。对于每个表单,您需要跟踪哪些值已更改,然后通过AJAX提交这些表单。

要考虑的另一件事是将所有表单合并为一个HTML表单,并让controller-&gt; action()将信息放在它所属的位置。