有没有办法检测提交前后表单值的变化?
Is there anyway to detect the change in a form values before and after submit?
我需要检测网页在页面加载和页面保存之间的任何变化。
这个有DOM属性吗?
如果您正在使用 SuiteScript 2.x 用户事件脚本,beforeSubmit(scriptContext) 和 afterSubmit(scriptContext) 入口点都提供 scriptContext.newRecord 和 scriptContext.oldRecord。您可以将这两条记录用于 gather/compare 函数中的值,例如。
var newRec = scriptContext.newRecord;
var oldRec = scriptContext.oldRecord;
//specify the specific fields you care about
var desiredKeys = ['fieldId1', 'fieldId2', 'fieldId3', 'fieldId4'];
//for each set of keys compare the values
for (var i=0; i < desiredKeys.length; i++){
var newValue = newRec.getValue({fieldId: desiredKeys[i]});
var oldValue = oldRec.getValue({fieldId: desiredKeys[i]});
if (newValue == oldValue){
log.debug(desiredKeys[i], 'value did not change');
} else {
log.debug(desiredKeys[i], 'value did change from: '+ oldValue +' to: '+ newValue);
}
}
我需要检测网页在页面加载和页面保存之间的任何变化。
这个有DOM属性吗?
如果您正在使用 SuiteScript 2.x 用户事件脚本,beforeSubmit(scriptContext) 和 afterSubmit(scriptContext) 入口点都提供 scriptContext.newRecord 和 scriptContext.oldRecord。您可以将这两条记录用于 gather/compare 函数中的值,例如。
var newRec = scriptContext.newRecord;
var oldRec = scriptContext.oldRecord;
//specify the specific fields you care about
var desiredKeys = ['fieldId1', 'fieldId2', 'fieldId3', 'fieldId4'];
//for each set of keys compare the values
for (var i=0; i < desiredKeys.length; i++){
var newValue = newRec.getValue({fieldId: desiredKeys[i]});
var oldValue = oldRec.getValue({fieldId: desiredKeys[i]});
if (newValue == oldValue){
log.debug(desiredKeys[i], 'value did not change');
} else {
log.debug(desiredKeys[i], 'value did change from: '+ oldValue +' to: '+ newValue);
}
}