如何在 Sencha Touch 中使文本字段不可编辑
Posted
技术标签:
【中文标题】如何在 Sencha Touch 中使文本字段不可编辑【英文标题】:How to make text field non editable in Sencha Touch 【发布时间】:2011-10-28 08:47:15 【问题描述】:我已使用以下属性创建文本字段并禁用它以供用户编辑。
已禁用:真
下面是我的 Xtype decleration 代码。
xtype : 'passwordfield',
name : 'password',
id: 'password',
disabled: true,
label : 'Password',
placeHolder :'Password',
useClearIcon : false
它看起来如下图所示。标签变灰。请让我知道如何使它不可编辑并且标签将保持不变。
Edit-1: 之后,在堆栈溢出和 sencha 论坛中进行了几次搜索,我发现下面的代码能够使我的文本字段不可编辑,但现在它本质上是静态的。
listeners:
afterrender: function(ele)
ele.fieldEl.dom.readOnly = true;
我们可以设置一次属性,但它没有任何动态设置的方法。我需要动态,因为我有时必须让用户进行编辑,有时还要让用户进行编辑。已禁用。
感谢任何其他在 Sencha Touch 中使文本字段不可编辑的方法。
【问题讨论】:
【参考方案1】:readOnly: true
thx,这对我来说很好用。现在我可以使用像标签这样的文本字段。使用简单的字段会导致 formpanel.data 出现问题
【讨论】:
【参考方案2】:更新
readOnly
应该是初始设置的一部分,例如:
xtype : 'passwordfield',
name : 'password',
id: 'password',
disabled: true,
label : 'Password',
placeHolder :'Password',
useClearIcon : false,
readOnly: true
使用readOnly
:
readOnly: true
【讨论】:
。这没有效果,我也试过了。我已经编辑了我的问题,请查看更新的编辑部分。 我们也没有 Ext.form.Text 类的任何只读属性。 @Neel 是 readOnly 还是 readonly 属性为您工作?区分大小写无效。我只是使用 disabled:true 你也可以使用监听器: afterrender: function(ele) ele.fieldEl.dom.readOnly = true; 也试过了。我现在明白了。你说的是煎茶触摸1?我被 sencha-touch-2 标签弄糊涂了.. Tnx 反正!【参考方案3】:fieldEl.dom.readOnly
的设置并不像大多数人想象的那样是静态的,因为 readOnly 标志不是 Sencha 特定的选项。这意味着:您保存要设为只读的项目并动态更改其状态,然后添加另一个将 fieldEl.dom.readOnly
设置为 false 的控件,瞧,您的项目又可以编辑了。
【讨论】:
以上是关于如何在 Sencha Touch 中使文本字段不可编辑的主要内容,如果未能解决你的问题,请参考以下文章
SENCHA:如何通过单击 SENCHA touch 中的添加/删除按钮动态添加/删除文本字段
Sencha Touch:如何以编程方式关注 ios 上的文本字段?