Client script keeps alerting
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-12-2025 04:15 PM
I created a Client script that would prevent an user from creating a change request assigned to a certain group, the idea was that on submitting a record with that group it would prevent the creatin and display an alert, however the alert keeps popping up preventing the user from changing the record
(function onSubmit(control, oldValue, newValue, isLoading) {
if (isLoading || g_form.isNewRecord() === false) {
return true;
}
var assignmentGroup = g_form.getReference('assignment_group', function(gr) {
if (gr && gr.name == 'xxx') {
alert('xxxxx');
g_form.submit(false);
return false;
}
});
return true;
})(g_form);
Labels:
1 REPLY 1
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-12-2025 05:22 PM
Hi @MaxAltamirano ,
you can try this script
function onSubmit() {
var assignmentGroup = g_form.getReference('assignment_group')
if (assignmentGroup && assignmentGroup.name == 'XXX') {
alert('xxxxx');
return false;
}
}
Alternative approach
create a client callable script include
var CheckAssignmentGroup = Class.create();
CheckAssignmentGroup.prototype = Object.extendsObject(AbstractAjaxProcessor, {
getGroupName: function() {
var group = new GlideRecord('sys_user_group');
if (group.get(this.getParameter('sysparm_group_id'))) {
return group.name;
}
return '';
}
});
onSubmit client script
function onSubmit() {
if (g_scratchpad.groupName) {
return true;
}
actionName = g_form.getActionName();
var ga = new GlideAjax('CheckAssignmentGroup');
ga.addParam('sysparm_name', 'getGroupName');
ga.addParam('sysparm_group_id', g_form.getValue('assignment_group'));
ga.getXMLAnswer(function(response) {
if (response && response == 'XXX' /*you group name goes here*/ ) {
alert('xxxxx');
return false;
} else {
g_scratchpad.groupName = true;
g_form.submit(actionName);
g_scratchpad.groupName = false;
}
});
return false;
}
Please mark my answer as helpful/correct if it resolves your query.
Regards,
Chaitanya