используя параметр maxlength в cakephp - но он выводит два значения maxlength в HTML - PullRequest
3 голосов
/ 20 октября 2011

Я просто пытаюсь понять, что CakePHP выглядит так, как будто это будет очень весело.

У меня есть форма ввода, которая выглядит так:какие выходы:

<label for="CampaignTitle">Title</label><input name="data[Campaign][title]" type="text" maxLength="76px" maxlength="255" id="CampaignTitle" />

обратите внимание на два значения для максимальной длины.Как я могу избавиться от второго значения "255", которое кажется предпочтительным в IE.

Ответы [ 2 ]

5 голосов
/ 20 октября 2011

Постарайтесь обратить внимание на использование заглавной буквы в html-свойстве "maxlength"

Cake автоматически определит максимальную длину для определенных типов полей по длине столбца базы данных. В вашем случае вы хотите переопределить длину этого поля - varchar (255) - равным 76 вместо 255, которые поле может допустить.

Но при вызове помощника вы устанавливаете атрибут "maxLength" - обратите внимание на заглавную букву "L" - который не является фактическим атрибутом "maxlength".

Итак - чтобы исправить ваш вызов помощника, удалите «px» и измените ключ с «maxLength» на «maxlength»

<?php echo $form->input('Campaign.title', array('maxlength'=>'76')); ?>
0 голосов
/ 20 октября 2011

Почему там px?

IE не понимает «px» для простого HTML, поэтому он переопределяет его и устанавливает его по умолчанию.

Используйте это

echo $form->input('Campaign.title', array('maxLength'=>'76'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...