Discussions
Categories
- 197.1K All Categories
- 2.5K Data
- 546 Big Data Appliance
- 1.9K Data Science
- 450.7K Databases
- 221.9K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 31 Multilingual Engine
- 552 MySQL Community Space
- 479 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.1K ORDS, SODA & JSON in the Database
- 555 SQLcl
- 4K SQL Developer Data Modeler
- 187.2K SQL & PL/SQL
- 21.3K SQL Developer
- 296.3K Development
- 17 Developer Projects
- 139 Programming Languages
- 293K Development Tools
- 110 DevOps
- 3.1K QA/Testing
- 646.1K Java
- 28 Java Learning Subscription
- 37K Database Connectivity
- 158 Java Community Process
- 105 Java 25
- 22.1K Java APIs
- 138.2K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 19 Java Essentials
- 162 Java 8 Questions
- 86K Java Programming
- 81 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 204 Java User Groups
- 24 JavaScript - Nashorn
- Programs
- 466 LiveLabs
- 39 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.7K Other Languages
- 2.3K Chinese
- 175 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 233 Portuguese
How do you make a Checkbox readonly?

We are on APEX 21.2
On the Form page shown below, the Assignee Completed field is a Checkbox field. The Checked Value is Y and the Unchecked Value is N.
The Maintains Session State is ‘Pay Session (Disk)’
When the user changes the Assignee Completed Field from N to Y, a dynamic action is triggered.
This dynamic action triggers an alert and several Set Values to set the values in the yellow highlighted fields (see below) and Execute JavaScript Codes to make those fields and the Assignee Complete checkbox to readonly.
The Execute JavaScript Code (highlighted above in green) contains the following.
All the true actions in this dynamic action work, except for this one.
How do I make the Assignee Completed field readonly after changing the assignee complete from N to Y?
Answers
-
Hello Glenda Hasley,
Disable action will make the checkbox is read only, but this lead to checkbox value will not store in the session, so you will need to do some walkaround such as creating temp item to hold the value.
-
There is one option, instead of a javascript action, u can trigger a disabled action.
On this point u can trigger a backend action as well to save the new status on 'Y'. Then, next time u reload the page u have new status.
You should also have a check when load the page, that in case the value is 'Y' u disabled that item.
As Hamza said, in javascript item, the value is disabled
apex.items.get(XXXX).disable = true
-
Please update your community profile with a recognisable username instead of "User_VH688".
There is one option, instead of a javascript action, u can trigger a disabled action.
On this point u can trigger a backend action as well to save the new status on 'Y'. Then, next time u reload the page u have new status.
You should also have a check when load the page, that in case the value is 'Y' u disabled that item.
"u"? This is a community of professionals and professional standards of discourse are expected. Posts should use language appropriate to a commercial email, not casual texting between 12 year olds. Additionally, most of the community are not native English speakers. Colloquialisms and slang are therefore best avoided to eliminate confusion.
-
This dynamic action triggers an alert and several Set Values to set the values in the yellow highlighted fields (see below) and Execute JavaScript Codes to make those fields and the Assignee Complete checkbox to readonly.
Per the HTML specification checkbox controls do not support the
readonly
attribute/property, therefore this is unworkable.Disable action will make the checkbox is read only, but this lead to checkbox value will not store in the session, so you will need to do some walkaround such as creating temp item to hold the value.
Both approaches make it impossible to undo the action if it has been performed in error. In UI/UX terms this is an inappropriate use of a checkbox as it violates the "not actionable" convention.
A better alternative would be to use Mark Complete/Mark Incomplete action buttons, shown and hidden depending on the record state, and trigger the required dynamic actions from these.
-
Both approaches make it impossible to undo the action if it has been performed in error. In UI/UX terms this is an inappropriate use of a checkbox as it violates the "not actionable" convention.
A better alternative would be to use Mark Complete/Mark Incomplete action buttons, shown and hidden depending on the record state, and trigger the required dynamic actions from these.
This is correct and convincing answer for some of these requirements. Thank you for clarifying this.