2010-12-30 4 views

ответ

16

Вы имеете в виду атрибут заполнитель (не таг)? form_input() принимает третий параметр с дополнительными атрибутами.

$opts = 'placeholder="Username"'; 
form_input('username', '', $opts); 

Или вы можете передать form_input() массив.

form_input(array(
    'name' => 'username', 
    'value' => '', 
    'placeholder' => 'Username', 
)); 

CodeIgniter Form Helper

+0

hm i can not get it to work: S is d ont положил на него атрибут placeholder – Simon

2

Руководство пользователя Codeigniter связана с ракетным указывает, что атрибуты, кроме имени и значения передаются form_input() как массив:

$data = array(
       'name'  => 'username', 
       'id'   => 'username', 
       'value'  => 'johndoe', 
       'maxlength' => '100', 
); 

echo form_input($data); 

// Would produce: 

<input type="text" name="username" id="username" value="johndoe" maxlength="100" size="50" /> 

Чтобы расширить на ответ ракеты , передавая 'placeholder'=>'my_placeholder' в этот массив, должен получить атрибут placeholder.

$data = array(
       'name'  => 'username', 
       'id'   => 'username', 
       'value'  => 'johndoe', 
       'maxlength' => '100', 
       'size'  => '50', 
       'style'  => 'width:50%', 
       'placeholder' => 'my_placeholder' 
      ); 

echo form_input($data); 

Имейте в виду, что заполнитель attr является очень новым и не поддерживается во всех браузерах. Проверьте this article в HTML центр html5, JQuery, и чистые JavaScript способы достижения заполнители

+0

Он должен произвести разметку, как было предложено, но это не так. Может быть, вспомогательная функция формы не принимает новые/пользовательские атрибуты. – apnerve

0

Codeigniter форма заполнитель для IE6, IE7 и IE8

echo form_input(array(
       'name' => 'stackoverflow', 
       'value' => 'yourplaceholder', 
       'placeholder' => 'yourplaceholder', 
       'onclick' => 'if(this.value == \'yourplaceholder\') this.value = \'\'', //IE6 IE7 IE8 
       'onblur' => 'if(this.value == \'\') this.value = \'yourplaceholder\''  //IE6 IE7 IE8 
)); 
0

вы можете установить заполнитель, как это

echo form_input('username','','placeholder=username'); 

это будет выглядеть так:

<input type='text' name='username' placeholder='username'/> 
Смежные вопросы