php - 在多选时使用 Input::old

标签 php arrays laravel multiple-select

大家好,我这里遇到一些问题..

// in controller
$select = \MyTable::select('id','name')->where('myWhere',valWhere)->get();
return this->data['select'];

// in view
<input type="hidden" name="inselect" value="">
<select name="sel" multiple>
foreach($select as $val)
   <option value="{{ $val->id }}">{{ $val->name }}</option>
</select>

因为我使用多选插件,输入 name="inselect"将包含选定的 id。所以选择后“inselect”将包含如下内容:

<input type="hidden" name="inselect" value="2,4,5"> // string value

我想用Input::old('inselect')返回这个“2,4,5”。如何获得?

最佳答案

试试这个代码。

<input type="hidden" name="inselect" value="">
<select name="sel" multiple>
foreach($select as $val)
   <option value="{{ $val->id }}" @if (in_array($val->id, Input::old('sel'))) selected @endif >{{ $val->name }}</option>
</select>

关于php - 在多选时使用 Input::old,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36299681/

相关文章:

javascript - 如何在 Chart.js 中更改标签和值,例如 500,000 到 500k?

php - 拉维尔 4 : get all registered routes

php - 如何在 php 中获取此 mysql 查询的两行的总和值

php - 如何在 PHP 中为域设置 cookie?

java - 数组的数组在这里做正确的事情吗?

php - 在 laravel 中显示管理员 View

php SELECT 查询适用于值但不适用于变量

php - Laravel5 急切加载空值

c++ - 在构造函数的初始化列表中初始化数组

javascript - 使用 Socket.io 有效发送大数组坐标