【问题标题】:My form is being displayed as text on the page我的表单在页面上显示为文本
【发布时间】:2015-08-11 08:57:36
【问题描述】:

我一直在 Laravel 5.1 中构建一个控制面板,今天刚刚构建了它的用户管理部分。

这似乎是在我使用Form:: 命令时发生的。

我怀疑这是因为登录和注册表单都很好,而且它们来自 Auth Scaffolding,因此这些表单是用 HTML 编写的,而不是使用 Form:: 命令。

但是,我使用Form:: 命令构建的所有表单都只是在页面上将表单代码显示为文本。

例如:

<h1><i class='glyphicon glyphicon-user'></i> Add User</h1>

    {{ Form::open(['role' => 'form', 'url' => '/user']) }}

    <div class='form-group'>
        {{ Form::label('name', 'Name') }}
        {{ Form::text('name', null, ['placeholder' => 'Name', 'class' => 'form-control']) }}
    </div>

    <div class='form-group'>
        {{ Form::label('username', 'Username') }}
        {{ Form::text('username', null, ['placeholder' => 'Username', 'class' => 'form-control']) }}
    </div>

    <div class='form-group'>
        {{ Form::label('email', 'Email') }}
        {{ Form::email('email', null, ['placeholder' => 'Email', 'class' => 'form-control']) }}
    </div>

    <div class='form-group'>
        {{ Form::label('password', 'Password') }}
        {{ Form::password('password', ['placeholder' => 'Password', 'class' => 'form-control']) }}
    </div>

    <div class='form-group'>
        {{ Form::label('password_confirmation', 'Confirm Password') }}
        {{ Form::password('password_confirmation', ['placeholder' => 'Confirm Password', 'class' => 'form-control']) }}
    </div>

    <div class='form-group'>
        {{ Form::submit('Create', ['class' => 'btn btn-primary']) }}
    </div>

    {{ Form::close() }}

在页面上以纯文本显示为:

<form method="POST" action="http://localhost/UCP/public/user" accept-charset="UTF-8" role="form"><input name="_token" type="hidden" value="nlVw9OY28DdLUZKOFcrRnlsc79k0LGOGTfURhhFI">
<label for="name">Name</label> <input placeholder="Name" class="form-control" name="name" type="text" id="name">
<label for="username">Username</label> <input placeholder="Username" class="form-control" name="username" type="text" id="username">
<label for="email">Email</label> <input placeholder="Email" class="form-control" name="email" type="email" id="email">
<label for="password">Password</label> <input placeholder="Password" class="form-control" name="password" type="password" value="" id="password">
<label for="password_confirmation">Confirm Password</label> <input placeholder="Confirm Password" class="form-control" name="password_confirmation" type="password" value="" id="password_confirmation">
<input class="btn btn-primary" type="submit" value="Create">
</form>

谁能帮我将这些显示为表单而不是页面上的文本?

【问题讨论】:

  • 由于 Laravel 5.0 所有输出默认被转义,即使是由表单助手生成的,所以你必须明确地取消它:{!! Form::whatever() !!}

标签: php forms laravel laravel-5


【解决方案1】:

感谢 Quasdunk 的评论,我解决了它,为了让它正常工作,它需要被取消转义。

下面的代码现在很有效:

<h1><i class='glyphicon glyphicon-user'></i> Add User</h1>

    {!! Form::open(['role' => 'form', 'url' => '/user']) !!}

    <div class='form-group'>
        {!! Form::label('name', 'Name') !!}
        {!! Form::text('name', null, ['placeholder' => 'Name', 'class' => 'form-control']) !!}
    </div>

    <div class='form-group'>
        {!! Form::label('username', 'Username') !!}
        {!! Form::text('username', null, ['placeholder' => 'Username', 'class' => 'form-control']) !!}
    </div>

    <div class='form-group'>
        {!! Form::label('email', 'Email') !!}
        {!! Form::email('email', null, ['placeholder' => 'Email', 'class' => 'form-control']) !!}
    </div>

    <div class='form-group'>
        {!! Form::label('password', 'Password') !!}
        {!! Form::password('password', ['placeholder' => 'Password', 'class' => 'form-control']) !!}
    </div>

    <div class='form-group'>
        {!! Form::label('password_confirmation', 'Confirm Password') !!}
        {!! Form::password('password_confirmation', ['placeholder' => 'Confirm Password', 'class' => 'form-control']) !!}
    </div>

    <div class='form-group'>
        {!! Form::submit('Create', ['class' => 'btn btn-primary']) !!}
    </div>

    {!! Form::close() !!}

【讨论】:

    【解决方案2】:

    只需将刀片模板语法 {{ Form::blah() }} 更改为 {!! Form::blah() !!} 即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-06
      • 2020-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-12
      相关资源
      最近更新 更多