質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

解決済

1回答

1477閲覧

Laravel timepickerとmultiselectをバリデーションエラーの際にoldで再表示したい

memimemi

総合スコア25

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

0クリップ

投稿2019/06/03 16:01

前提・実現したいこと

Laravelで作成しているアプリケーションで、timepickerとmultiselectのoldヘルパーの部分が
どうしても反映できませんので教えていただけませんでしょうか。

発生している問題・エラーメッセージ

エラーは出ていませんが反映されない

該当のソースコード

<div class="row"> <div class="col-sm-4"> <div class="form-group mb-2"> <label>開始時間</label> <input type="text" class="form-control time24" placeholder="00:00" id="timepicker_b" name="timepicker_b" value="{{old('timepicker_b')}}"> </div> </div> <div class="col-sm-4"> <div class="form-group mb-2"> <label>終了時間</label> <input type="text" class="form-control time24" placeholder="00:00" id="timepicker_a" name="timepicker_a" value="{{old('timepicker_a')}}"> </div> </div> </div>
<div class="row"> <div class="col-sm-12"> <div class="form-group"> <label> 参加者</label> <select id="optgroup" class="ms" multiple="multiple" name="member[]" value="{{old('member[]')}}" required> @foreach($team as $teams) <optgroup label="{{ $teams->name }}"> @foreach($user as $users) @unless($teams->id === $users->team_id) @continue @endunless <option value="{{ $users->number }}">{{ $users->first_name }} {{ $users->last_name }}</option> @endforeach @endforeach </optgroup> </select> </div> </div>

この二つの部分がバリデーションエラーをすると空白になってしまいます。

試したこと

sisyphusというプラグインでフォームの自動保存で代用出来るかと試してみたのですが、
こちらでもセレクトボックスとタイムピッカーの方は保存されませんでした。

補足情報(FW/ツールのバージョンなど)

sisyphusはフォームを自動保存するプラグインなのですがフォームとして認識されていないという事なのでしょうかご存じでしたらご教授下さい。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

LaravelのBladeが作成するのは、動的HTMLとしてHTMLテキストまでなので、その後JavaScriptライブラリが、HTMLのDOM構造をどのように解釈するかはライブラリ次第になります。

問題解決の糸口として、

  • 動的HTMLで事前にvalue属性に値を入れればJavaScriptライブラリが適切に解釈できるか
  • oldヘルパーの添字で意図するフォーム入力の値が取得てきているか

を切り分けて検証してみてください。

投稿2019/06/03 21:49

aro10

総合スコア4106

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

memimemi

2019/06/05 12:04

回答ありがとうございます、いただいたアドバイスを元に試行錯誤してみたのですが 動的HTMLで事前にvalue属性に値を入れればJavaScriptライブラリが適切に解釈できるかという項目でvalue属性に値を入れても何も反映されない状況になってしまいます。 どのようにデバッグ作業を行えばよいでしょうか?
aro10

2019/06/07 03:28

そうですね。 まずは、LaravelBladeを使う前に、利用しているライブラリだけで使い方を検証すると、問題切り分けに良いかと思います。
memimemi

2019/06/08 01:15

回答遅くなりすみません。 なんとかoldを出力することができました! 時刻の所だけはvalueを設定しても反映されなかったので、別のライブラリを検討しています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問