xpages - XPages:禁用的属性会破坏 xp:inputText 所需的计算
问题描述
在我的应用程序中,我有一个 xp:inputText 控件,其中 disabled 属性设置为 true,所需的属性计算如下:
<xp:inputText
id="txtSecurityLevel"
styleClass="form-control-static"
value="#{employeeBean.employee.securityLvl}"
disabled="true"
>
<xp:this.validators>
<xp:validateRequired
message="Unsufficient level of security">
</xp:validateRequired>
</xp:this.validators>
<xp:this.required><![CDATA[#{javascript:return submittedBy("btnProceed")}]]></xp:this.required>
</xp:inputText>
该字段的值是预先填充的,我不希望用户更改该值。
当我对其他 inputText 控件使用相同的方法但将 disabled 属性设置为 false 时,将为这些字段启动验证。
我应该使用另一种方法吗?
解决方案
要使该字段不可编辑,请使用该readonly
属性。
Internet Explorer 过去允许disabled
和readonly
属性互换。但是在 IE10 中,他们改变了行为,disabled
就像在其他浏览器中一样,即值不会从浏览器传递到服务器。因为它没有从浏览器传回,所以您的验证失败。disabled
用于浏览器应该无法使用的输入,请参阅https://www.w3schools.com/Tags/att_input_disabled.asp。你想要的是它对用户是只读的。
推荐阅读
- node.js - 如何在同一个测试中使用不同的值多次模拟返回值?
- android - ViewPager 中的片段在 isVisible 不是时显示为 true
- typescript - 如何在 TypeScript 中定义可配置的类型保护工厂?
- ios - Tableview 未从核心数据刷新(Swift)
- c# - C# 使用 Microsoft.Office.Interop.Excel 错误将 Range .Formula 设置为 Range .Value2
- node.js - 如何使用微服务为 nodejs typescript 项目正确分发 node_modules
- tensorflow - Keras:在图像增强过程中失去轴与亮度范围
- python - 我对confusion_matrix Python有疑问吗?
- python - Matplotlib:annotate() 缺少 1 个必需的位置参数:'self'
- javascript - 如何将 JSON 时间转换为可读的人类格式?