This topic is locked
[SOLVED]

I need to make several fields conditionally required.

5/7/2025 11:16:20 AM
ASPRunner.NET General questions
M
MSchell author

I need to make several fields conditionally required.

Relocation is a bit field in SQL, if selected, 7 fileds are required, if it's not selected then they are not. Using ASPRunner.net 10.7. Tried it as a field event, and Javascript on load. syntax passes, tried the 1 in {If (this.getValue() == 1) with single tics and quotes, but the record saves without requiring these fields to be populated. Not much of a Java person

What am I doing wrong?

params["value"] = this.getValue();
var Relocation = Runner.getControl(pageid,'Relocation');
var DeptCode = Runner.getControl(pageid,'DepartmentCode');
var ResCode = Runner.getControl(pageid,'ResourceCode');
var BusUnit = Runner.getControl(pageid,'BusinessUnit');
var EarnCode = Runner.getControl(pageid,'EarningsCode');
var Phyloc = Runner.getControl(pageid,'PhysicalLocation');
var ActCode = Runner.getControl(pageid,'ActivityCode');

var ProjCode = Runner.getControl(pageid,'ProjectCode');

Relocation.on('change', function(e)
{If (this.getValue() == 1)
{
DeptCode.addValidation("IsRequired");
ResCode.addValidation("IsRequired");
BusUnit.addValidation("IsRequired");
EarnCode.addValidation("IsRequired");
Phyloc.addValidation("IsRequired");
ActCode.addValidation("IsRequired");
ProjCode.addValidation("IsRequired");
}
}
);
return true;

M
MSchell author 5/7/2025

Resolved

var Reloc = Runner.getControl(pageid, 'Relocation');
var DeptCode = Runner.getControl(pageid, 'DepartmentCode');
var ResCode = Runner.getControl(pageid, 'ResourceCode');
var BusUnit = Runner.getControl(pageid, 'BusinessUnit');
var EarnCode = Runner.getControl(pageid, 'EarningsCode');
var Phyloc = Runner.getControl(pageid, 'PhysicalLocation');
var ActCode = Runner.getControl(pageid, 'ActivityCode');
var ProjCode = Runner.getControl(pageid, 'ProjectCode');

pageObj.hideField("DepartmentCode");
pageObj.hideField("ResourceCode");
pageObj.hideField("BusinessUnit");
pageObj.hideField("EarningsCode");
pageObj.hideField("PhysicalLocation");
pageObj.hideField("ActivityCode");
pageObj.hideField("ProjectCode");

Reloc.on('change', function(e) {
if (this.getValue() === 'on') {
pageObj.showField("DepartmentCode");
pageObj.showField("ResourceCode");
pageObj.showField("BusinessUnit");
pageObj.showField("EarningsCode");
pageObj.showField("PhysicalLocation");
pageObj.showField("ActivityCode");
pageObj.showField("ProjectCode");
DeptCode.addValidation("IsRequired");
ResCode.addValidation("IsRequired");
BusUnit.addValidation("IsRequired");
EarnCode.addValidation("IsRequired");
Phyloc.addValidation("IsRequired");
ActCode.addValidation("IsRequired");
ProjCode.addValidation("IsRequired");
} else {
pageObj.hideField("DepartmentCode");
pageObj.hideField("ResourceCode");
pageObj.hideField("BusinessUnit");
pageObj.hideField("EarningsCode");
pageObj.hideField("PhysicalLocation");
pageObj.hideField("ActivityCode");
pageObj.hideField("ProjectCode");
DeptCode.removeValidation("IsRequired");
ResCode.removeValidation("IsRequired");
BusUnit.removeValidation("IsRequired");
EarnCode.removeValidation("IsRequired");
Phyloc.removeValidation("IsRequired");
ActCode.removeValidation("IsRequired");
ProjCode.removeValidation("IsRequired");
DeptCode.setValue('');
ResCode.setValue('');
EarnCode.setValue('');
BusUnit.setValue('');
Phyloc.setValue('');
ProjCode.setValue('');
}
});

return true;