|
|
@@ -114,6 +114,40 @@ const JE = {
|
|
|
if (rst === null || rst === undefined) rst = newVal;
|
|
|
return rst;
|
|
|
},
|
|
|
+ getFieldValueArray: function(field, dataObj) {
|
|
|
+ let rst = null;
|
|
|
+ if (field.DataNodeName === 'NA') {
|
|
|
+ if (!field[JV.PROP_AD_HOC_DATA]) {
|
|
|
+ field[JV.PROP_AD_HOC_DATA] = [];
|
|
|
+ }
|
|
|
+ rst = field[JV.PROP_AD_HOC_DATA];
|
|
|
+ } else {
|
|
|
+ if (!field.DataNodeName) {
|
|
|
+ // that means this is a self-defined discrete field!
|
|
|
+ field.DataNodeName = JV.DATA_DISCRETE_DATA;
|
|
|
+ field.DataSeq = dataObj[JV.DATA_DISCRETE_DATA];
|
|
|
+ dataObj[JV.DATA_DISCRETE_DATA].push([]);
|
|
|
+ }
|
|
|
+ rst = dataObj[field.DataNodeName][field.DataSeq];
|
|
|
+ }
|
|
|
+ if (rst === null || rst === undefined) rst = [];
|
|
|
+ return rst;
|
|
|
+ },
|
|
|
+ setFieldValueArray: function(field, dataObj, newArr) {
|
|
|
+ if (newArr instanceof Array) {
|
|
|
+ if (field.DataNodeName === 'NA') {
|
|
|
+ field[JV.PROP_AD_HOC_DATA] = newArr;
|
|
|
+ } else {
|
|
|
+ if (!field.DataNodeName) {
|
|
|
+ // that means this is a self-defined discrete field!
|
|
|
+ field.DataNodeName = JV.DATA_DISCRETE_DATA;
|
|
|
+ field.DataSeq = dataObj[JV.DATA_DISCRETE_DATA].length;
|
|
|
+ dataObj[JV.DATA_DISCRETE_DATA].push([]);
|
|
|
+ }
|
|
|
+ dataObj[field.DataNodeName][field.DataSeq] = newArr;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
removeFieldValue: function (field, dataObj, valIdx) {
|
|
|
if (field.DataNodeName === "NA") {
|
|
|
if (field[JV.PROP_AD_HOC_DATA].length > valIdx && valIdx >= 0) {
|