CakePHP форма помощник - HABTM множественный флажок стайлинг

голоса
5

У меня есть две таблицы: «рестораны» и «кухонь», которые связаны друг с другом с помощью таблицы HABTM

В кухнях таблицы имеют определенные фиксированные записи - 54 номер

Ресторан может иметь любое количество кухонь. На выпечке приложения это произошло с множественным выбором. Так как я хотел флажки я использовал массив ( «типа» => «выберите», «кратно» => «флажок»), чтобы преобразовать его в флажки.

Теперь я хочу, чтобы стиль, как это флажков отображаются в столбцах 4, как показано на скриншоте ниже.

img2.pict. ком / 82 / Ьс / a4 / 1453459/0 / 200908111511.png

echo $form->input('Cuisine', array('type' => 'select', 'multiple' => 'checkbox'));  

Приведенный выше код производит много Div вокруг каждого элемента следующим образом

http://img2.pict.com/1a/a3/0a/1453457/0/200908121509.png

Я попробовал следующее:

echo $form->input('Cuisine', array( 'type' => 'select', 'multiple' => 'checkbox', 'div' => false, 'label' => false));

но этот код удаляет только внешние дивы и этикетку. Я не в состоянии контролировать внутренний

<div class=checkbox>
<label for=CuisineCuisine2>Andhra</label>

которые появляются вокруг отдельных флажков.

Как я могу использовать FormHelper, чтобы удалить или дать классы внутренних дивы, так что я могу сделать некоторые пользовательские стили? Или есть другой способ, чтобы заполнить эту HABTM таблицу, чтобы получить эффект я хочу?

Задан 12/08/2009 в 17:23
источник пользователем
На других языках...                            


3 ответов

голоса
4

Вы можете обойти эту проблему, делая $ форма-> выберите () вместо этого, и примените стиль или класс атрибута, чтобы получить его, чтобы посмотреть, как вы хотите.

Это, кажется, имеет смысл не использовать функцию $ форма-> вход (), если вы собираетесь удалить DIV и этикетку в любом случае.

Ответил 13/08/2009 в 22:02
источник пользователем

голоса
2

Вы можете стилизовать DIV элементов с помощью CSS.

<style>
div.input div.checkbox {
    float: left;
    width: 50%;
}
</style>
Ответил 28/08/2009 в 06:39
источник пользователем

голоса
1

Вы можете удалить или дать классы внутренних дивы, как это

$this->Form->input("hello_test",array('type'=>'checkbox','div'=>'class_name'));

По умолчанию используется торт: тип класса, например - тип флажок, то class="checkbox"

Ответил 23/08/2012 в 08:54
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more