readonly怎么改背景色 jsp~~

readonly:expression(this.readOnly=true);background-color:expression((this.readOnly&&t... readonly:expression(this.readOnly=true) ;
background-color:expression((this.readOnly && this.readOnly==true)?"#000000":"");
我用的这个方法,第一句没问题,但是第二句就没反映。。
我用的是jsp,求改变颜色方法,或者有什么方法能够禁止输入,不用disabled等只读属性~
其实改颜色的主要目的是因为用showModalDialog打开的页面,无法复制,用户要求可以复制,所以全部用的text,只改了css用readOnly属性~
由于text较多,100多个~改背景色应该是最方便的了。。
求更好的方法或能够改背景色的方法~~
展开
 我来答
百度网友bae7667
2012-08-09 · TA获得超过936个赞
知道小有建树答主
回答量:404
采纳率:100%
帮助的人:147万
展开全部
expression受浏览器兼容的影响很大,而且我劝你不要用,这个是通过样式代码执行脚本的口子,是一个漏洞点。。。。
文本的只读,其实可以考虑变通,即onclick事件直接执行onblur,点上去就焦点移开。。。
以前有项目有过这个需求,一方面要只读,另一方面说只读的灰色太淡,年纪大了看不清。。。同理下拉框等其他控件。你可以引入一个JS文件,里面通过DIV或者BODY或者其他(反正就是页面上的某块作用域),遍历其中的控件,然后统一修改这些控件的onclick属性。。
追问
但是这样就不能复制了,因为控件多,内容也多,所以复制是必须的~要求的界面又只能用showModalDialog来打开,用open会非常的丑且操作起来不方便。。
追答
我记得可以复制。。。
而且模态框和新开JSP窗口哪有不能复制与否的区别。你用TABLE,TR,TD,构建好框架,然后直接把对应的值塞进TD里,这样即不能让用户改数据,又可以选中TD中的文本进行复制。不涉及到文本框的模拟只读啊。。

111
222

333
444

这种代码放进JSP(HTML里直接可预览),一方面内容不会被修改,另一方面能被选中复制。实际就是展现的格式呗,一样的数据,如果能改则,如果不能改,就直接是aa。模态框和new window在这方面没区别,除非有特殊JS在控制,如果是外部引用的,那只要在引用JS后再写一段JS取消局部的控制就行。比如在你想放出选中的区域包一层DIV,取个ID,然后JS先获取这个DIV,然后还是遍历里面的输入框,把引用JS里防止复制的代码段功能反写一次(这扯远了,因为用不到文本框)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
QQPasswordZhu
2012-08-10
知道答主
回答量:21
采纳率:0%
帮助的人:3.3万
展开全部
shang w3cschool 一看就知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式