- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2024 09:31 PM
Hi All,
I want to allow user to select only 2 checkbox and other 2 should be readonly.How to achieve this?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-18-2024 02:24 AM - edited 02-18-2024 02:31 AM
Hi Sachin,
Try the below script, and make sure of below points:
1. If you are having 4 checkboxes, then you need to write 4 onChange client script one for each checkbox. But code in each script will remain the same. Only replace the backend name of checkbox with your's [That's only change needed in the script]. For me this scripts works as per your requirement. In my example I have 5 checkboxes where you can select only 2 checkboxes (any).
function onChange(control, oldValue, newValue, isLoading) {
if (isLoading || newValue == '') {
return;
}
var checkBoxes = ["checkbox1", "checkbox2","checkbox3","checkbox4","checkbox5"]; //Replace backend name of all checkboxes
var uncheckedBoxes = [];
var checkedBoxes = [];
checkBoxes.forEach(function(item){
if(g_form.getValue(item) == "false")
uncheckedBoxes.push(item);
else
checkedBoxes.push(item);
})
if(checkedBoxes.length == 2){
uncheckedBoxes.forEach(function(item){
g_form.setReadOnly(item,true);
});
}
else{
uncheckedBoxes.forEach(function(item){
g_form.setReadOnly(item,false);
});
}
}
Let me know if this works for you.
Please mark my response as Correct if it solves your problem and hit Helpful if this rings the bell.
Thanks,
Kamlesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2024 09:58 PM
Hi @Sachin G K1 ,
Please create catalog UI Policy. Please find below screenshots.
Please try the approach, if it's helpful.
Please mark "Accept Answer" & "Helpful" if it's solved your purpose.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2024 10:23 PM
This would make one checkbox readonly, thats not my use case. I want user able to select any of the two checkbox, as soon as they select any 2 checkboxes other checkboxes should become readonly
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-18-2024 04:59 AM
Hi @Sachin G K1 ,
Here you are trying to check control of 4 elements, on change client script can check the change in only one field at once. if this is your requirement you can make use of On submit client script to collectively check all 4 check box using for loop.
If you want to do it using On change client client script you need to create multiple of them... I hope it's clear...
☑️ Please mark responses as HELPFUL or ACCEPT SOLUTION to assist future users in finding the right solution....
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2024 10:31 PM
Hi @Sachin G K1 ,
☑️ Please mark responses as HELPFUL or ACCEPT SOLUTION to assist future users in finding the right solution....