首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在选择中指定默认值(Laravel CRUD)

在选择中指定默认值(Laravel CRUD)
EN

Stack Overflow用户
提问于 2021-03-05 12:36:29
回答 2查看 115关注 0票数 0

我正在尝试学习Laravel CRUD,但我似乎找不到一个好的答案来解决如何在进行更新/编辑时为下拉菜单选择默认值。

通过这个value="{{ $kanban->title }}",我能够获得正确的项目名称

代码语言:javascript
复制
<input type="text" name="title" placeholder="project name" value="{{ $kanban->title }}" class="border-2 rounded px-2 py-1 focus:outline-none">

然而,当我对期权做类似的事情时,它不起作用。

代码语言:javascript
复制
<select name="color" id="icon_color" class="border-2 rounded pl-2 pr-10 py-1 focus:outline-none" value="{{ $kanban->color }}" class="form-control">

我知道你可以选择selected来选择默认值,但在编辑时,如果默认选择的是用户最初选择的值,这将是很有帮助的。

这就像完整的代码,如果任何人能链接到一些文档,可以解释这是如何工作的,也将非常感谢。

代码语言:javascript
复制
<select name="color" id="icon_color" class="border-2 rounded pl-2 pr-10 py-1 focus:outline-none" value="{{ $kanban->color }}" class="form-control">
    <option value="text-blue-500 bg-blue-300">Blue</option>
    <option value="text-red-500 bg-red-300">Red</option>
    <option value="text-green-500 bg-green-300">Green</option>
    <option value="text-yellow-500 bg-yellow-300">Yellow</option>
    <option value="text-gray-500 bg-gray-300">Gray</option>
</select>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-05 13:40:39

select标记没有value属性。可以在mdn上找到select标记支持的属性。因此,无论您是否设置了value属性,它都不会对options进行任何更改。必须在option元素上使用selected属性才能指定默认选项。

代码语言:javascript
复制
<select name="color" id="icon_color" class="border-2 rounded pl-2 pr-10 py-1 focus:outline-none" class="form-control">
    <option value="text-blue-500 bg-blue-300" @if ($kanban->color == 'text-blue-500 bg-blue-300') selected @endif>Blue</option>
    <option value="text-red-500 bg-red-300" @if ($kanban->color == 'text-red-500 bg-red-300') selected @endif>Red</option>
    <option value="text-green-500 bg-green-300" @if ($kanban->color == 'text-green-500 bg-green-300') selected @endif>Green</option>
    <option value="text-yellow-500 bg-yellow-300" @if ($kanban->color == 'text-yellow-500 bg-yellow-300') selected @endif>Yellow</option>
    <option value="text-gray-500 bg-gray-300" @if ($kanban->color == 'text-gray-500 bg-gray-300') selected @endif>Gray</option>
</select>
票数 1
EN

Stack Overflow用户

发布于 2021-03-05 13:19:55

说明是FormCollectivewith laravel。这使您可以轻松地在刀片式服务器模板中编码。

代码语言:javascript
复制
$data = [
'text-blue-500 bg-blue-300' => Blue,
'text-red-500 bg-red-300' => Red,
'text-green-500 bg-green-300' => Green,
'text-yellow-500 bg-yellow-300' => Yellow,
'text-gray-500 bg-gray-300' => Gray,
];

//$defaultValue = value from db if update else default value
{!! Form::select('size', $data , $defaultValue)!!}

你可以找到更多的https://laravelcollective.com/docs/6.x/html#drop-down-lists

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66486839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档