添加 placeholder 自定义内容 功能

在开发项目过程中,会碰到个别土老板,对文字细节都非常较真的,而现有的系统的 placeholder 文字是默认的:请输入[标题],现有需求需要能自定义的,所以我在项目中做了以下修改:
在Builder文件里的  addTextarea 增加一个 $placeholder 参数,并做了点小修改 变成以下形式:
    public function addTextarea($name = '', $title = '', $tips = '', $default = '', $extra_attr = '', $extra_class = '',$placeholder='')
{
$place_tmp='请输入'.$title;
$item = [
'type' => 'textarea',
'name' => $name,
'title' => $title,
'tips' => $tips,
'value' => $default,
'extra_class' => $extra_class,
'extra_attr' => $extra_attr,
'placeholder' => $place_tmp,
];
if($placeholder!=''){
$item['placeholder']=$placeholder;
}
if ($this->_is_group) {
return $item;
}

$this->_vars['form_items'] = $item;
return $this;
}

然后把 textarea.html 的placeholder 改掉,不用默认的标题,变成:
<div class="form-group col-md-{$_layout[$form[type].name]|default='12'} col-xs-12 {$form[type].extra_class|default=''}" id="form_group_{$form[type].name}">
<label class="col-xs-12" for="{$form[type].name}">{$form[type].title|htmlspecialchars}</label>
<div class="col-xs-12">
<textarea class="form-control" id="{$form[type].name}" rows="7" name="{$form[type].name}" placeholder="{$form[type].placeholder}" {$form[type].extra_attr|default=''}>{$form[type].value|default=''}</textarea>
{notempty name="form[type].tips"}
<div class="help-block">{$form[type].tips|clear_js}</div>
{/notempty}
</div>
</div>

使用时:
['textarea:6', 'cus_remarks', '建立回访','','','','','自定义内容placeholder内容']

 这样就能达到自定义内容了,希望能在下版本加入,

 

1 个评论

感谢您的建议

要回复文章请先登录注册