Conditional Mandatory Attachment
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-28-2020 01:25 PM
I'm trying to require an attachment based on a condition. I have done this in the past for other projects but it's simply not working this time. I have tried a few answers I found from the Community but absolutely nothing is working. I am in the Human Resources: Service Portal application. I have a record producer that I've put an onSubmit client script on. I put alerts in to validate that my if statement is evaluating to true and it is, and my alert in the try statement is also firing. Here's my client script:
function onSubmit() {
// If employee's country is Ireland or United Kingdom and Reason for Change is Salary & Payments require an attachment
var reason = g_form.getValue('u_tcReason');
var country = g_form.getValue('user_country');
if (reason == 'Salary & Payments' && country == 'GB' || country == 'IE') {
alert('in the if statement for my condition. Country is ' + country);
try {
alert('in the try');
var attachments = document.getElementById('header_attachment_list_label');
if (attachments.style.visibility == 'hidden' || attachments.style.display == 'none') {
alert('Need attachments.');
return false;
}
} catch (e) {
var count = getSCAttachmentCount();
if (count <= 0) {
alert('Need attachments.');
return false;
}
}
}
}
Isolate script: false
UI Type: All
I've also tried this approach:
function onSubmit(){
var value = g_form.getValue('request_type');
if(value == 'b' || value == 'd'){
if(this.document.getElementsByClassName('get-attachment').length == 0) {
alert('You must add an attachment before submitting this request.');
return false;
}
}
}
That doesn't work either. With both approaches I get this error message at the top of the form in native:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-30-2020 09:17 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-30-2020 09:36 AM
You can return false in your client script to abort submitting record.
Regards,
Sachin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-30-2020 09:42 AM
I did add the return false, it still submitted.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-30-2020 08:08 AM
Hi
Check following article from Abhishek
Possible Ways for Making an Attachment Mandatory : Service Portal/Native UI
Regards
Pranav