Laravel встроенный оператор в выбранном - PullRequest
0 голосов
/ 03 марта 2020

Хотелось бы узнать, возможно ли добавить встроенное выражение if в форму Laravel, выбрать элемент

Я могу сделать это следующим образом:

<select>
<option value="1">One</option>
<option value="2">Two</option>
{!! $variable=='Hello'?'<option value="3">Three</option>':'' !!}
</select>

Но я хотел бы знать, есть ли способ, подобный этому:

{!! Form::select('action',array('1'=>'One','2'=>'Two',@if($variable=='Hello') '3'=>'three' @endif),null,['class'=>'form-control']) !!}

Ответы [ 2 ]

0 голосов
/ 03 марта 2020

есть простой способ сделать это, зарегистрируйте функцию в вашем помощнике php пример файла, она будет называться options

function  options($variable)
{
$options = [];
$options[1] = "One";
$options[2] = "Two";
$options[3] = $variable=='Hello'?3:4;
return $options
};

и в вашей форме установите ваш выбор следующим образом

{!! Form::select('action',options($variable),null,['class'=>'form-control']) !!}
0 голосов
/ 03 марта 2020

Я думаю, вам нужно сначала заполнить массив и использовать оператор if, а затем передать массив в форму: select

<?php
$selectOptions = array();
$selectOptions[1] = 'one';
$selectOptions[2] = 'two';
if($variable == "Hello") {
    $selectOptions[3] = 'three';
}

?>

{!! Form::select('action',$selectOptions,null,['class'=>'form-control']) !!}


...