Hay dos botones en esas hojas (Laravel). El botón ( .btn-main ) funciona en el main , pero el botón ( .btn-header ) en el encabezado no funciona.
Quiero decir, cuando hago clic en el botón ( .btn-header ) en el encabezado , no hace nada y no se guarda en la base de datos.
Sé que se trata de la forma .
inc/header.blade.php
<div class="sticky fixed"> <button type="submit" class="btn-header">Save</button> </div>índice.blade.php
@extends('layouts.app') @section('content') <main> <form action="{{ route('post.update', $post->id) }}" method="POST"> @method('PUT') @csrf <input type="text" name="title" value="Title..."> <input type="text" name="content" value="This is a test."> <button type="submit" class="btn-main">Save</button> </form> </div> @endsectionaplicación.blade.php
<!DOCTYPE html> <html> <head>...</head> <body> <header> @include('inc.header') </header> @yield('content') </body> </html>Quiero que los botones funcionen en ambas secciones ( encabezado y principal ) y almacene la información en la base de datos.
Su botón de encabezado no hace nada porque no es parte de/dentro del formulario. Sin embargo, puede usar un atributo de formulario para que funcione su botón de encabezado. Agregue un atributo de id a su elemento <form> y apunte el atributo de form en su botón a esa misma id .
Su formulario:
@extends('layouts.app') @section('content') <main> <form action="{{ route('post.update', $post->id) }}" method="POST" id="myForm"> @method('PUT') @csrf <input type="text" name="title" value="Title..."> <input type="text" name="content" value="This is a test."> <button type="submit" class="btn-main">Save</button> </form> </div> @endsection (Se agregó id="myForm" al elemento <form> ).
Su botón de encabezado:
<div class="sticky fixed"> <button type="submit" class="btn-header" form="myForm">Save</button> </div> (Se agregó form="myForm" al botón).
Editar: asegúrese de que no haya otro id="myForm" en su página, elija un nombre único diferente si es así