0

我正在尝试添加占位符和 set_value 以通过 CodeIgniter 的 form_input 设置 value 属性。我尝试了以下代码,但占位符不起作用:

 echo form_input('username', set_value('username'), "required='required'","placeholder='test'");

我是否正确传递了占位符?

另外,我尝试通过以下代码通过数组传递这些属性:

$usernameData=array(
    'id'=>'username',
    'value'=>set_value('username'),
    'required'=>'required',
    'placeholder'=>'UserName',
);
    echo form_input($usernameData);

但是对于上面的代码 set_value 不起作用!您能否让我知道如何在数组中使用 set_value 以及如果我不使用数组(第一个示例)如何使占位符工作?

如果您需要更多说明,请告诉我

谢谢

4

3 回答 3

4

不幸的是,我没有时间测试您的代码,但您需要从 CodeIgniter 文档http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#functionreference设置该字段的名称

您必须通过函数的第一个参数提供字段名称。第二个(可选)参数允许您为表单设置默认值

$usernameData=array(
'id'=>'username',
'name'=>'username', //you are missing this attribute
'value'=>set_value('username'),
'required'=>'required',
'placeholder'=>'UserName',
);

echo form_input($usernameData);

更新

Form_input http://ellislab.com/codeigniter/user-guide/helpers/form_helper.html

让您生成标准文本输入字段。您可以在第一个和第二个参数中至少传递字段名称和值

如果不传递数组,则意味着只能将 field_name 和 value 作为参数添加到 form_input。

echo form_input('username', 'johndoe'); 

如果您希望表单包含一些额外的数据,例如 Javascript,您可以将其作为字符串传递到第三个参数中:

$js = 'onClick="some_function()"';

echo form_input('username', 'johndoe', $js);

所以,你应该最终得到:

$placeholder= 'placeholder="test"';
echo form_input('username', set_value('username'), $placeholder);
于 2013-10-23T13:09:39.317 回答
0

你可以这样使用

<input name="country_name" id="country_name" value="<?php echo !empty($CountryDet)?$CountryDet['Country_Name']:'NA';?>" type="text" size="30" class="FormField" placeholder="Country Name" value="<?php echo set_value('country_name');?>" />
于 2013-10-23T13:03:42.530 回答
0

尝试这个

echo form_input(array('name' => 'username','value' => '','placeholder' => 'Username',));
于 2013-10-23T13:09:18.563 回答