Перейти к содержимому


Фотография
- - - - -

Из элемена select получить "name", если известно "value"


Лучший Ответ Cheren-dow , 18 April 2015 - 10:24

rasputin, получить name можно следующей конструкцией.

$elementOptions = $item->getElement('d83290a8-0108-4bb5-8d5a-d865b3803bbb')->getConfig()->get('option');
$elementData = $item->getElement('d83290a8-0108-4bb5-8d5a-d865b3803bbb')->getElementData()->get('option');

$optionName = null;
foreach ($elementOptions as $option) {
    if ($option['value'] == $elementData[0]) {
        $optionName = $option['name'];
        continue;
    }
}

var_dump($elementData[0]);
var_dump($optionName); 

Что бы не писать постоянно цикл можете создать свой хелпер и перенести цикл в метод.

Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 2

#1 rasputin

rasputin

Отправлено 17 April 2015 - 17:34

Приветствую, Уважаемые коллеги!

Работаю над своим первым элементом, и столкнулся с такой проблемой:

Имеем в итеме элемент "select", в котором каждая опция с двумя полями (name и value).

Способ описанный ниже, позволяет получить только value (name в массиве отсутствует).

$element = $this->_item->getElement('9a0708a9-eedc-49eb-8271-c109232b6060')->getElementData()->get('option');
echo $element['0']

Как получить name?


Сообщение отредактировал rasputin: 17 April 2015 - 17:39

  • 0

#2 Cheren-dow

Cheren-dow

Отправлено 18 April 2015 - 10:24   Лучший Ответ

rasputin, получить name можно следующей конструкцией.

$elementOptions = $item->getElement('d83290a8-0108-4bb5-8d5a-d865b3803bbb')->getConfig()->get('option');
$elementData = $item->getElement('d83290a8-0108-4bb5-8d5a-d865b3803bbb')->getElementData()->get('option');

$optionName = null;
foreach ($elementOptions as $option) {
    if ($option['value'] == $elementData[0]) {
        $optionName = $option['name'];
        continue;
    }
}

var_dump($elementData[0]);
var_dump($optionName); 

Что бы не писать постоянно цикл можете создать свой хелпер и перенести цикл в метод.


  • 1
Изображение
 

#3 rasputin

rasputin

Отправлено 19 April 2015 - 16:38

Спасибо! Я уж думал без запроса к БД не обойтись:)


  • 0




Click to return to top of page in style!