【发布时间】:2015-11-08 21:29:03
【问题描述】:
我是 Laravel 的新手。我正在构建一个显示已检查记录的代码。 以下是我的代码。
{!! Form::open(array('action' => 'ClientsController@store','method' => 'POST', 'name' => 'f1'))!!}
@foreach($clients as $client)
{!! Form::checkbox('agree', $client->email, null, ['class' =>'questionCheckBox']) !!}
<article>
{{ $client->user_name }}
{{ $client->email }}
</article>
@endforeach
{!! Form::close() !!}
{!! Form::open(array('action' => 'ClientsController@display','method' => 'GET'))!!}
<div class="form-group">
{!! Form::submit('show-selected ',['class' => 'btn btn-primary form-control']) !!}
</div>
{!! Form::close() !!}
当我单击按钮 "show-selected" 时,我必须显示 $client->email。
我的控制器方法是,
public function display() {
$client = Client::all();
dd(Input::has('agree'));
$client = Input::has('agree') ? true : false;
return $client->email;
}
这应该返回true,但它返回false,我不知道如何获取另一个页面上选中复选框的值。
【问题讨论】:
-
在带有“显示”操作的表单中,您没有传递复选框值。那就是你得到错误的乳清......在你的“display()”中通过dd(Input :: all())检查这个;....是否需要使用2种表格。 ??
-
@ArtisanBay :显示代码现在可以正常工作。你能告诉我如何获取我的表单的价值 {!! Form::checkbox('agree', $client->email, null, ['class' =>'questionCheckBox']) !!} 我传递的值是“$client->email”。
-
当您单击 show-selected 按钮时,您正试图获取在 store() 方法中检查的所有 $client->email。我说的对吗??
-
是的。现在我只收到一封带有代码
$client = Input::get('agree'); echo "Hiii". " " .$client;的电子邮件,但它只提供选中复选框的值。如果我必须得到多选复选框的响应,我该怎么办 -
是的。但不是全部,只能用复选框选中。