2015-05-18 5 views
1

Можно ли установить флажки в строке, поэтому позади друг друга с помощью FlexForm? Теперь я использую следующий код, но это показывает каждую настройку в вертикальном списке.Показать Typo3 FlexForm элементы checkbox inline

   <settings.ownchoice_for_sale>     
        <TCEforms> 
         <label>For sale</label> 
         <config> 
          <type>check</type> 
         </config> 
        </TCEforms> 
       </settings.ownchoice_for_sale> 
       <settings.ownchoice_reserved>     
        <TCEforms> 
         <label>Reserved</label> 
         <config> 
          <type>check</type> 
         </config> 
        </TCEforms> 
       </settings.ownchoice_reserved>     
+0

Так вы имеете в виду, если вы проверяете «ownchoice_for_sale» форма получает перезагружается и «ownchoice_reserved» является показали? 'inline' означает« Inline-Relation-Record-Editing (IRRE) », см. http://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Inline/Index.html –

+0

Нет. Я имею в виду, что опция показана inline в форме. Так друг за другом друг напротив друга. – Tom

+0

хорошо, я ответил на ваш вопрос. Удачи! :) –

ответ

2

FlexForms не поддерживает такие функции, как palette TCA предложений.

Вы можете использовать multiple value selector, чтобы предложить все доступные опции в одном поле вместо checkboxes (см .: http://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Select/Index.html#columns-select-examples-multiple).

Примером этого в вашем случае:

<settings.ownchoice> 
    <TCEforms> 
    <label>Own Choice</label> 
    <config> 
     <type>select</type> 
     <items> 
     <numIndex index="0"> 
      <numIndex index="0">For Sale</numIndex> 
      <numIndex index="1">for_sale</numIndex> 
     </numIndex> 
     <numIndex index="1"> 
      <numIndex index="0">Reserved</numIndex> 
      <numIndex index="1">for_sale</numIndex> 
     </numIndex> 
     </items> 
     <size>10</size> 
     <minitems>0</minitems> 
     <maxitems>100</maxitems> 
     <suppress_icons>1</suppress_icons> 
    </config> 
    </TCEforms> 
</settings.ownchoice> 

И в контроллере:

$options = ($this->settings['ownchoice'] ? \TYPO3\CMS\Core\Utility\GeneralUtility::trimExplode(',', $this->settings['ownchoice']) : array()); 

if (in_array('for_sale', $options)) { 
    // option 'for_sale' is selected 
} 
+0

очень грустно, что результат представляет собой строку ... так что мы не можем с ней справиться напрямую ... НО спасибо за это решение! Гораздо приятнее сделать 3 отдельных флажка –

Смежные вопросы