使用 set_value 的 Textarea 未填充 Codeigniter

Posted

技术标签:

【中文标题】使用 set_value 的 Textarea 未填充 Codeigniter【英文标题】:Textarea using set_value not populated Codeigniter 【发布时间】:2012-08-12 17:15:33 【问题描述】:

我的视图中有一个简单的表单,它有一个文本区域:

<textarea name="description" value="<?php echo   set_value('description'); ?>"></textarea>

在我的控制器中,我已经使用 form_validation 库验证了这个文本区域

$this->form_validation->set_rules('description', 'Description', 'trim|required');

验证工作正常,即如果文本区域为空白,它会给我错误,但它不会重新填充 textarea,如果 textarea-description 正确填写但其他字段有一些错误

我做错了什么?

【问题讨论】:

【参考方案1】:

Textarea 没有 value 属性。

<textarea name="description"> 
      <?php echo set_value('description'); ?> 
</textarea>

【讨论】:

我能再傻点吗?非常感谢,这是快速而完美的 是的,你可以。如果您使用的是表单助手,则它是第三个参数。 iam 使用 &lt;?php echo form_dropdown('mid', $id_map, set_value('mid'), 'id="promotion_product"') ?&gt; 这超出了这个问题的范围。请提出一个新问题并发布您尝试过的代码和收到的错误。【参考方案2】:

如果 value 只返回 form_validation:

<?=form_textarea(array('name'=>'description'),set_value('description'));?>

如果值在别处:

<?=form_textarea(array('name'=>'description'),set_value('description',$value));?>

文档 CodeIgniter: https://www.codeigniter.com/user_guide/helpers/form_helper.html

form_textarea() 这个函数在所有方面都与 上面的 form_input() 函数,除了它生成一个“textarea” 类型。注意:而不是“maxlength”和“size”属性 在上面的示例中,您将改为指定“rows”和“cols”。

【讨论】:

以上是关于使用 set_value 的 Textarea 未填充 Codeigniter的主要内容,如果未能解决你的问题,请参考以下文章

CodeIgniter set_value() 不工作?

codeigniter 覆盖表单助手中的 set_value 函数,使用 MY_helper 在获取时重新填充字段,同时发布

表单中的 Textarea 未使用 jQuery AJAX 通过 POST 提交

php codeigniter - 表单助手 - 如何在无线电输入上实现 set_value

空 HTML textarea 输入未显示在 mPDF 生成的 PDF 中

textarea 未提交到数据库