ExtJs中disabled和readOnly美观度的分析

ExtJs中disabled和readOnly美观度的分析

ExtJs中,如果设置输入框为只读属性,一般第一考虑的都是readonly=true

它的效果和正常输入框一样,但是不允许输入;

然而,它很容易引起歧义,让用户第一感觉是它是输入框,有输入信息的冲动,其实不然;

这时候,可以考虑使用disabled=true属性

这下绝对不会认为可输入,一看就知道不允许修改,但字体颜色明显很模糊,所以效果不佳;

因此,使用中常常仍然使用readOnly=true,但修改背景颜色来做到disabled的更好效果表现,效果如下:

明显感觉就是禁止输入,而且字体清晰,代码片段如下:

{columnWidth : 1,

layout : ‘form‘,

defaults : {

xtype : "textfield",

width : 150,

allowBlank : true,

readOnly : true,

    style:‘background:#E6E6E6‘

},

items:[

{fieldLabel:‘事件标题‘,name:‘event_title‘,width:435}

]

},

为什么要选择readOnly而不是disabled呢,还有一个明显的区别:

disabled=true,表单提交时候无法把数据传递到后台Action层,而readOnly=true可以;这个区别和html中标签的disabled和readOnly属性区别是一致的。

ExtJs中disabled和readOnly美观度的分析,布布扣,bubuko.com

时间: 2024-08-03 20:16:22

ExtJs中disabled和readOnly美观度的分析的相关文章

ExtJs在disabled和readOnly美学分析

ExtJs中disabled和readOnly美观度的分析 ExtJs中.假设设置输入框为仅仅读属性,一般第一考虑的都是readonly=true 它的效果和正常输入框一样,可是不同意输入: 然而,它非常easy引起歧义,让用户第一感觉是它是输入框,有输入信息的冲动,事实上不然: 这时候,能够考虑使用disabled=true属性 这下绝对不会觉得可输入,一看就知道不同意改动,但字体颜色明显非常模糊,所以效果不佳: 因此.使用中经常仍然使用readOnly=true,但改动背景颜色来做到disa

input中的disabled 和 readonly的区别

1.Readonly只针对input(text / password)和textarea有效, 而disabled对于所有的表单元素都有效, 2.但是表单元素在使用了disabled后,当我们将表单以POST或GET的方式提交的话,这个元素的值不会被传递出去, 而readonly会将该值传递出去(readonly接受值更改可以回传,disable接受改但不回传数据). disabled和readonly这两个属性有一些共同之处,比如都设为true,则form属性将不能被编辑,往往在写js代码的时

Extjs中FieldSet的收缩和展开实例

Extjs中FieldSet的收缩和展开实例: FieldSet表单控件属于Ext.form.FieldSet的类,继承自:Ext.Panel,表示对某一组字段的标准容器,其中最主要的一个功能就是收缩和展开收缩与展开demo: items: [ id:'check_email_hacklog_send', xtype: 'fieldset', height:'auto', checkboxToggle: true, checkboxName: 'enable_email_hacklog_send

表单元素 disabled 和 readonly 辨析

正确答案: B D 分析: Readonly 和 Disabled 是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,总结如下: 1)Readonly只针对 input(text/password) 和 textarea 有效,而 disabled 对于所有的表单元素都有效,包括 select, radio, checkbox, button 等. 2)若输入项的 disabled 设为 true,则该表单输入项不能获取焦点,用户的所有操作(鼠标点

form表单元素中disabled的元素的值不会提交到服务器

1.表单元素中disabled的元素的值不会提交到服务器,后台获取的值为null <form id="myForm" action="#" method="post"> <input name="username" disabled="disabled" /> <input type="submit" value="提交"/> &l

ExtJS中TreeGrid的用法

如果您是第一次使用ExtJS的TreeGrid的话,我相信总会有一些小麻烦的,下面就来说一说ExtJS中TreeGrid的使用. 本人使用的ExtJS版本为4.0.7,并且使用了MVC模式,如果不了解ExtJS的MVC模式的话我个觉得还是有必要去学学的, 学完后你肯定会喜欢上的. 其实在ExtJS中并没有TreeGrid这么一个类,这个说法是从EasyUI中借用过来的,ExtJS中的TreeGrid功能已经合在了Ext.tree.Panel中. TreeGrid显示出来大概是这个样子: 下面是这

EXTJS中grid的数据特殊显示,不同窗口的数据传递

//EXTJS中grid的数据特殊显示renderer : function(value, metaData, record, rowIndex, colIndex, store, view) { var USED_AMOUNT_ = 0; for (var i = 0; i < matMonthPlanHisList.length; i++) { if(matMonthPlanHisList[i].MAT_NO_ == record.get('MAT_NO_')){ USED_AMOUNT_

extjs中apply和applyIf的用法

本文导读:extjs中apply及applyIf方法都是用于把一个对象中的属性复制到另外一个对象的属性中,相当于属性拷贝.不同的是apply将会覆盖目标对象中的属性,而applyIf只拷贝目标对象中没有,而源对象中有的属性. apply 方法的签名 apply( Object obj, Object config, Object defaults ) : Object 参数说明 第一个参数是要复制的目标对象:第二个参数是复制的源对象:第三个参数是默认源对象,第三个参数是可选的,意味着如果第三个参

extjs中form.reset(true)出现的bug修复

在之前的开发extjs中,用ext.form.panel开发了一个表单,当使用了reset(true)之后,再次使用getRecord()却还是可以得到值,该值为上一次的旧值,查看了api文档,再结合源码来看,发现了其中的错误,其中在form中查看reset()方法,可以看到是这么定义 的, reset: function() { this.form.reset(); }, 可见其中的参数并未传递到真正的reset()方法中,该方法继承自Ext.form.base中查看其中的代码 reset: