首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在cakephp中使用maxlength选项,但它在html中输出两个maxlength值。

在cakephp中使用maxlength选项,但它在html中输出两个maxlength值。
EN

Stack Overflow用户
提问于 2011-10-21 00:44:55
回答 2查看 11K关注 0票数 3

我只是想弄清楚cakephp,它看起来会很有趣。

我有一个表单输入,如下所示:

代码语言:javascript
复制
echo $form->input('Campaign.title', array('maxLength'=>'76px'));

以下哪项输出:

代码语言:javascript
复制
<label for="CampaignTitle">Title</label><input name="data[Campaign][title]" type="text" maxLength="76px" maxlength="255" id="CampaignTitle" />

请注意maxlegth的两个值。我怎样才能摆脱第二个"255“值,它似乎是IE中的首选。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-21 01:37:23

注意html属性"maxlength“的大小写。

Cake将根据数据库列的长度自动确定某些字段类型的最大长度。在本例中,您希望覆盖该字段的长度--一个varchar( 255 ) --为76,而不是该字段允许的255。

但是在你的helper调用中,你设置了一个属性"maxlength“--注意大写的"L”--这并不是真正的属性"maxLength“。

因此-要修复您的助手调用,请删除"px“并将键从"maxLength”更改为"maxlength“

代码语言:javascript
复制
<?php echo $form->input('Campaign.title', array('maxlength'=>'76')); ?>
票数 6
EN

Stack Overflow用户

发布于 2011-10-21 00:49:28

为什么会有px?

IE不理解普通HTML的"px“,所以它覆盖它,并将其设置为默认值。

使用这个

代码语言:javascript
复制
echo $form->input('Campaign.title', array('maxLength'=>'76'));
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7839293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档