【问题标题】:display checked values on another page in laravel在 laravel 的另一个页面上显示检查的值
【发布时间】: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 }}
    &nbsp;
    {{ $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-&gt;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; 的电子邮件,但它只提供选中复选框的值。如果我必须得到多选复选框的响应,我该怎么办
  • 是的。但不是全部,只能用复选框选中。

标签: php laravel-5


【解决方案1】:

这行得通。

我的刀片文件是:

    {!! Form::open(array('action' => 'ClientsController@display','method' => 'GET'))!!}


<div class="form-group">
    {!! Form::checkbox("agree[]", 'email_1', null) !!} <p>email_1</p>
</div>

<div class="form-group">
    {!! Form::checkbox("agree[]", 'email_2', null) !!} <p>email_2</p>
</div>

<div class="form-group">
    {!! Form::checkbox("agree[]", 'email_3', null) !!} <p>email_3</p>
</div>


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

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

而显示方式是:

public function display(){
        $data = Input::get('agree');
                $count = count ($data);
                echo "Selected email is/are:" . $count;
                echo "<br/>";
                foreach ($data as $big_name){
                    echo $big_name;
                    echo "<br/>";
        }
    }

点击“显示-选中”按钮后,会显示选中复选框的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多