$size=(isset($widget['size'])&&is_numeric($widget['size']))?$widget['size']:60;$form['input']['size']=array('#type'=>'textfield','#title'=>t('Size of textfield'),'#default_value'=>$size,'#element_validate'=>array('_element_validate_integer_positive'),'#required'=>TRUE,);
注释
评论#1
Jackl85 信用署名: Jackl85评论做它!:)
注意:我使用
彩色文本的标签!不要抄袭!!!
1.编辑文件:
date/date/date_admin.inc
在第19行你发现:
用。。。来代替:
在第109行你发现:
后添加:
2.编辑文件:
date/date_api_elements.inc
在第147行你找到:
后添加:
评论#2
Jackl85 信用署名: Jackl85评论日期的维护者:你能插入下一个版本吗?
评论#3
arlinsandbulte 信用署名: arlinsandbulte评论它使事情更容易和更快,如果有人会创建一个补丁文件...
评论#4
thekevinday 信用署名: thekevinday评论这里是从#1的“补丁”放在请求的格式。
评论#5
thekevinday 信用署名: thekevinday评论从#1(因此#4)的补丁已经完成了大部分工作,但是错过了几件事情。
首先,日期模块提供了使用文本框或选择列表的选项。
为了与核心选择列表一致,不能为选择列表的情况提供字段的大小。
我试图通过在以下if条件中包装输入字段来解决这个问题: 我猜这部分基于下面几行可以找到。 如果还有更多的情况需要由提到的if条件处理,请更正此补丁。
<?php if (in_array($widget['type'], array('date_popup', 'date_popup_repeat'))) { ?>
<?php if (in_array($widget['type'], array('date_select', 'date_popup', 'date_select_repeat', 'date_popup_repeat'))) { ?>
第二,使用60作为默认长度是完全正确的。但是,日期已经具有硬编码20作为值。为了保持向后兼容性,我将默认值从60更改为20.更改的代码如下所示:
<?php $size = (isset($widget['size']) && is_numeric($widget['size'])) ? $widget['size'] : 20; ?>
第三,关于原始补丁的一切工作,除了当尺寸作为属性应用时。
我已经确定立即问题发生在文件中的位置:。 要查找的功能是。 受影响的行是: 如果我手动更改20说30,我注意到要更改的日期字段的大小。 这意味着,由于某种原因没有填充。
date_popup/date_popup.module
date_popup_process_date
<?php '#size' => !empty($element['#size']) ? $element['#size'] : 20, ?>
$element['#size']
我不知道为什么没有填充,也不需要做什么,以确保这是填充(除了已经做了)。 因此,我将这标记为需要工作。
$element['#size']
附上是从#4的补丁,修复了本文中提到的第一种和第二种情况。
评论#6
thekevinday 信用署名: thekevinday评论自定义监视器打印显示数组键
'#size'
从未出现在文件中$element
函数的数组date_popup_process_date
中。date_popup/date_popup.module
但是,确实出现在数组中。
['#field']['widget']['size']
$element
这下一个补丁改变, 现在是
date_popup/date_popup.module
<?php '#size' => !empty($element['#size']) ? $element['#size'] : 20, ?>
<?php '#size' => !empty($element['#field']['widget']['size']) ? $element['#field']['widget']['size'] : 20 ?>
随着这个变化,这个功能工作正常。
请查阅
评论#7
Csabbencs 信用归属: Csabbencs评论请添加支持将文本字段的大小和最大长度设置为Drupal 7版本的Date模块!
评论#8
克里斯·查尔顿 信用署名:克里斯·查尔顿评论我只是注意到D7版本的date_text小部件不支持size&maxlength强制他们默认为和。
size = 60
maxlength = 128
我提出这个问题为D7 - http://drupal.org/node/1105818
评论#9
brad.bulger 信用归属: brad.bulger评论我添加了textfield小部件设置从#6的补丁。它为我工作良好。这似乎是一个明智的功能添加。
评论#10
信息 来源: linuzboy评论评论#11
蕾妮小号 信用署名:蕾妮小号评论请参阅#1105818:为Drupal 7的#size和#maxlength提供支持。
来自 https://www.drupal.org/node/763766