Класс в теге <option>с Codeigniter - PullRequest
0 голосов
/ 30 января 2012

Можно ли добавить атрибут класса в тег <option> с помощью CodeIgniter?

<select name='state'>
    <option value="usa" class='top'>USA</option>
    <option value="ny">NY</option>       
</select>

Если нет, то как расширить помощник по формам для поддержки этого?Это сложно?

Ответы [ 2 ]

0 голосов
/ 30 января 2012

Лично я предпочитаю не использовать помощников для таких простых задач ... Встроенный оператор if должен быть достаточным для вашего случая.

Если бы я хотел динамически заполнить тег, я бы сделал что-то вроде этого:

 <?php
   $result; //My result set
 ?>

<select>
 <?php foreach($result as $line): ?>
 <?php $class = ($condition===TRUE)?'this_class':''; ?>
      <option class="<?php echo $class; ?>"><?php echo $line->data; ?></option>
 <?php endforeach; ?>
</select>

Сейчас это может показаться немного грязным, но для вас удобнее писать HTML, когда вам это нужно, вместо того, чтобы делать это помощникам.

Если вы используете IDE, это даже помогает использовать подсветку HTML, которая позволяет лучше визуализировать вашу разметку, не теряя подсветку php, когда вам нужно:)

0 голосов
/ 30 января 2012

Да, вы можете создавать своих собственных помощников.Смотрите "Расширение помощников" здесь, в документации.Я бы сделал то, что говорит, и скопировал бы версию «MY_helper.php» в папку вашего приложения;не связывайтесь с ядром, если вам действительно не нужно.

http://codeigniter.com/user_guide/general/helpers.html

Вы можете использовать массив значений и установить класс и элемент в массиве (и изменить foreach вблизи строки327 в помощнике) или передайте другой массив и проверьте его в foreach.

...