Laravelでform内に複数のボタンを設置する

Laravelでform内に複数のボタンを設置方法をメモ。

サンプルコード

各ボタンにname属性をつけることで、ボタンごとに処理を分けられます。

app\Http\routes.php

Route::get('/form', 'FormController@getIndex');
Route::post('/form', 'FormController@postIndex');

app\Http\Controllers\FormController.php

<?php

namespace App\Http\Controllers;

use Request;

class FormController extends Controller
{
	public function getIndex()
	{
		return view('form.index');
	}

	public function postIndex()
	{
		if(Request::input('next1')) {
			return '登録済の住所を使う場合';
		} elseif(Request::input('next2')) {
			return '住所を入力した場合';
		}
	}
}

resources\views\form\index.blade.php

{!! Form::open() !!}
    <p>住所を入力してください。</p>
    {!! Form::submit('登録済の住所を使う', array('name' => 'next1')) !!}
    <dl>
        <dt>{!! Form::label('address', '住所:') !!}</dt>
        <dd>
            {!! Form::text('address', null) !!}
        </dd>
    </dl>
    {!! Form::submit('次へ', array('name' => 'next2')) !!}
{!! Form::close() !!}

post前の画面です。

installing-multiple-buttons-in-the-form-in-laravel01

post後はボタン毎で表示内容を切り替えることができました。

installing-multiple-buttons-in-the-form-in-laravel02

installing-multiple-buttons-in-the-form-in-laravel03

 

【参考サイト】

 

このエントリーをはてなブックマークに追加

関連記事

コメントを残す

メールアドレスが公開されることはありません。
* が付いている欄は必須項目です

CAPTCHA


コメントが承認されるまで時間がかかります。

2024年4月
 123456
78910111213
14151617181920
21222324252627
282930