如何在blade.php中获取输入值

时间:2018-01-15 12:41:28

标签: php laravel laravel-5

我需要获取下面使用的输入值,该怎么做? 我试图喜欢这个,但错误说

  

未定义的变量:名称

<div class="col-md-10 col-md-offset-1">
      <input id="name" type="text" name="name" />
</div>


<div class="col-md-10 col-md-offset-1">
    @php
       $nameValue=$_GET['name'];
    @endphp
    <input id="name2" type="text" name="name2" value="{{$nameValue}}" />
</div>

3 个答案:

答案 0 :(得分:3)

您必须知道您的输入值(此处为&#34;名称&#34;)仅在提交表单后才可用。

如果要在提交之前访问表单值,请查看VueJS或任何其他前端框架(React,Angular)。或者只是使用jQuery。

因此,如果您想在提交前使用输入值,则必须使用JavaScript。

与评论中提到的其他人一样,您可以在控制器中访问您的表单值,然后将其传递给您的视图。

例如(来自文档):

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class UserController extends Controller
{

    public function formSubmit(Request $request)
    {
        $name = $request->input('name');

        return view('form', ['name' => $name])
    }
}

现在您可以使用视图中的值:

<input id="name2" type="text" name="name2" value="{{$name}}">

另一种可能性是&#34;旁路&#34;您的控制器并直接从您的routes.php返回您的视图:

Route::get('/form-submit', function(){
    return view('form');
});

但是我不确定这是否有效,您可以直接访问$ _GET / $ _ PSOT而无需使用Laravels请求。

答案 1 :(得分:0)

$nameValue=Request::input('name')

在刀片模板中,您可以使用Request门面访问请求参数,也可以直接打印它:

{{Request::input('name')}}

答案 2 :(得分:0)

您可以从Request类获取输入数组:

Request::all()['your_input']

您还可以检查所需输入是否存在:

@isset(Request::all()['your_input'])
     {{-- your input existed --}}
@else
     {{-- your input does not existed --}}
@endisset