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

xam*_*Dev 3 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>
Run Code Online (Sandbox Code Playgroud)

Bro*_*zka 6

您必须注意,您的输入值(此处为“名称”)仅在提交表单后才可用。

如果您想在提交之前访问表单值,您应该查看 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])
    }
}
Run Code Online (Sandbox Code Playgroud)

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

<input id="name2" type="text" name="name2" value="{{$name}}">
Run Code Online (Sandbox Code Playgroud)

另一种可能性是“绕过”你的控制器并直接从你的routes.php返回你的视图:

Route::get('/form-submit', function(){
    return view('form');
});
Run Code Online (Sandbox Code Playgroud)

但我不确定这是否有效,您可以直接访问 $_GET/$_PSOT 而不使用 Laravels Request。


Luc*_* C. 5

$nameValue=Request::input('name')
Run Code Online (Sandbox Code Playgroud)

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

{{Request::input('name')}}
Run Code Online (Sandbox Code Playgroud)

在最新版本中,您还可以使用:

{{request()->input('name')}}
Run Code Online (Sandbox Code Playgroud)