添加默认值以 Laravel 表单::选择中选择列表


Add default value to select list in Laravel form::select

我希望是简单的问题。

我需要将默认值添加到我的选择列表"请选择",并将其设置为禁用。

<select name="myselect" id="myselect">
  <option value="" disabled>Please Select</option>
  <option value="1">Item 1</option>
  <option value="2">Item 2</option>
</select>

我目前的拉拉维尔形式::选择是

{{
Form::select(
    'myselect',
    $categories,
    $myselectedcategories,
    array(
        'class' => 'form-control',
        'id' => 'myselect'
    )
}}

如何修改此值以包含默认选项值?

在 Laravel 5.1 中,如果列表是集合,您可以在默认项前面加上(Eloquent::lists()的结果)

$categories = Category::lists('name', 'id');
$categories->prepend('None');
你可以

像这样使用array_merge

{{
Form::select(
    'myselect',
    array_merge(['' => 'Please Select'], $categories),
    $myselectedcategories,
    array(
        'class' => 'form-control',
        'id' => 'myselect'
    ))
}}

或者,您可以在选择之前的位置设置占位符:

$categories[''] = 'Please Select';

更新

要添加禁用的属性,您可以尝试此操作:(未经测试)

{{
Form::select(
    'myselect',
    array_merge(['' => ['label' => 'Please Select', 'disabled' => true], $categories),
    $myselectedcategories,
    array(
        'class' => 'form-control',
        'id' => 'myselect'
    ))
}}

'placeholder' => 'Please Select'添加到Form::select中。

{!!
  Form::select(
    'myselect', 
    $categories, 
    null, 
    ['class' => 'form-control', 'placeholder' => 'Please Select'])
!!}

或者只放置占位符,例如:

[
    'class' => 'form-control',
    'id' => 'myselect',
    'placeholder' => 'None'
]

那将起到作用。

$categories = Category::lists('name', 'id');
$categories->prepend('None', 0);

对于,前面 请选择空值

$categories = Category::lists('name', 'id');
$categories->prepend('Please Select', '');

这段代码将填充这样的东西,

$categories[''] = 'Please Select';
$categories[0] = 'item 1',
$categories[1] = 'item 2';

现在你可以使用这样的东西:

{!! Form::select('myselect', $categories, '',['id'=>'myselect']) !!}

这对于表单验证也很有帮助,例如必需的。

现在,默认印度被选中

{

{ form::select('terms_agreement_type', [null => 'Select Control'] + ["印度

" => "印度", "尼泊尔" => "尼泊尔"], "印度") }}

你可以使用弹拨

控制器

$role = Model::all();
{{ Form::select('nameselect', $role->pluck('name', 'id')->prepend('default value...', ""))}}

我为这篇文章提供了解决方案。我希望能帮助某人

我使用 PHP 函数向模型数组添加一个选项

array_unshift($model, ['value' => '

', 'name' => 'Select value']);

我使用了占位符,它对我有用

{!!表单::选择('供应商', $suppliers, 空, ['类' => '表单控件', '占位符' => '请选择']) !!}

虽然这不能回答这个问题的描述,但搜索标题将我带到了这里。Form::select()的第三个参数是指示默认选定值的参数。

{!! Form::select('event_id', $events, $defaultSelectedEventId) !!}

Laravel 5.3

{{ Form::select('role', ['' => 'Select Role'] +$roles, null, ['class' => 'form-control']) }}