大家好,我如何在CodeIgniter的form_input()
辅助函数中使用占位符标记?
谢谢:)
答案 0 :(得分:16)
您的意思是占位符属性(不是标记)吗? form_input()
使用其他属性获取第三个参数。
$opts = 'placeholder="Username"';
form_input('username', '', $opts);
或者您可以传递form_input()
数组。
form_input(array(
'name' => 'username',
'value' => '',
'placeholder' => 'Username',
));
答案 1 :(得分:2)
由Rocket链接的Codeigniter用户指南指示除name和value之外的属性作为数组传递给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" />
要扩展Rocket的答案,将'placeholder'=>'my_placeholder'
传递给该数组应生成占位符属性。
$data = array(
'name' => 'username',
'id' => 'username',
'value' => 'johndoe',
'maxlength' => '100',
'size' => '50',
'style' => 'width:50%',
'placeholder' => 'my_placeholder'
);
echo form_input($data);
请注意,占位符attr非常新,并不是所有浏览器都支持。查看html中心的this article以获取html5,jQuery和纯javascript方法来完成占位符
答案 2 :(得分:0)
IE6,IE7和IE8的Codeigniter表格占位符
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
));
答案 3 :(得分:0)
您可以像这样设置占位符
echo form_input('username','','placeholder=username');
这将是这样的
<input type='text' name='username' placeholder='username'/>