问题描述
我正在寻求一些指导。我们支持一个应用程序,即使用 com 的 ie 版本和使用 DCOM 的 chrome/edge 版本。为在 IE com 中工作而编写的 Javascript,在 DCOM 中不起作用。如果我们可以采取任何步骤来更改/更新可以在 DCOM 中工作的此类代码,该怎么办? 下面是一些示例代码,所以你有一个想法。 申请表有一些部分,您可以在其中放置您的 Javascript,例如“onload”“onchange script”等。 加载脚本:
var cfs_onLoFieldName = 'load_std_form_data';
window.setTimeout(function () {{
var el = getFormElementDOM(cfs_onLoFieldName);
setFormElement(cfs_onLoFieldName,'Please wait...');
el.focus();
el.blur();
}},50);
On Change Script:
'use strict';(function(){
function formState(formObj,modifiedMode){
standardFormState(formObj,modifiedMode);
}
var _getFormElement=_tryCatch(getFormElement);
var _getDataValue=_tryCatch(getDataValue);
var _setFormElement=_tryCatch(setFormElement);
var _setFormElementFromData=_tryCatch(setFormElementFromData);
var _getElementFromXML=_tryCatch(getElementFromXML);
var _formElementExists=_tryCatch(formElementExists);
var _getFormElementDOM=_tryCatch(getFormElementDOM);
var _formState=_tryCatch(formState);
var loadEvalData='load_std_form_data';
_setFormElement(loadEvalData,'updating...');
function _tryCatch(fn){
try{return fn;}
catch(e){
console.warn('_tryCatch: ',e);}}
function setDtFromDm(fieldName,tableFrom,codeField,codeValue,returnField,conditionExpr){
var dateFromDb=_getDataValue(tableFrom,conditionExpr);
if(!_getFormElement(fieldName)){if(dateFromDb){
var dateTimeArray=dateFromDb.split(' ');
var date=dateTimeArray[0];
var timeArray=dateTimeArray[1].split(':');
var time=String.prototype.concat(timeArray[0],':',timeArray[1],' ',dateTimeArray[2]);
_setFormElement(fieldName,date);
_setFormElement('time_'+fieldName,time);}}}
function setElFromEval(xs){
for(var i=0;i<xs.length;i++){
if(!_getFormElement(xs[i][0])){
if(_formElementExists(xs[i][0])){
_setFormElementFromData(xs[i][0],'test_header_x','test_header_id',evalId,xs[i][1]);}}}}
function getClientAge(){
return _getDataValue('client_personal_view ','people_id',_getElementFromXML(formXML,'people_id'),'age');}
var evalId=function(){
var programId=_getElementFromXML(formXML,'program_providing_service');
var eventId=programId=='{CE6F5DE7-9ADA-4815-A849-1ECB2186ADA6}'?'F1192D0D-1416-48D5-A6DC-9115747419F0':'2C31265D-9DAB-4CF0-826A-78FC33A25768';
var peopleId=_getElementFromXML(formXML,'people_id');
var eventIdredefined = _getDataValue('event_view',peopleId,'event_log_id','people_id = \'\''+peopleId+'\'\' AND is_deleted = 0 AND event_deFinition_id = \'\''+eventId+'\'\'');
var eventLogId=_getDataValue('event_view','people_id = \'\''+peopleId+'\'\' AND is_deleted = 0 AND event_deFinition_id = \'\''+eventId+'\'\' AND program_providing_service = \'\''+programId+'\'\'','end_date DESC');
return eventLogId;}();
!_getFormElement('time_actual_date')?function(fieldName){
var dt=new Date();var currDate=dt.getMonth()+1+'/'+dt.getDate()+'/'+dt.getFullYear();
var currTime=dt.getHours()+':'+(dt.getMinutes()<10?'0'+dt.getMinutes():dt.getMinutes());
_setFormElement(fieldName,currDate);_setFormElement('time_'+fieldName,currTime);}
('actual_date'):null;
setDtFromDm('udf_evaldate_TA','event_log','actual_date');
setElFromEval([['udf_referralsource_TA','udf_referralsource_TA'],['udf_rapintervention_TA','udf_rapintervention_TA'],['udf_whodidrap_TA','udf_whodidrap_TA'],['udf_opiodoverdose_TA','udf_opioidoverdose_TA'],['udf_opioidoverdose_TA',['udf_autismspectrum_TA','udf_autismspectrum_TA']]);
(function(fieldName){
var currentAge=getClientAge();
var formAge=_getFormElement(fieldName);
if(!formAge){
if(currentAge){_setFormElement(fieldName,currentAge);}}})
('udf_clientAge_TA');
(function(fieldName){
var currentAge=getClientAge();
var currYesNo=currentAge<21?'977497DC-9725-4DBC-9188-2AF053242399':'BE24AEBA-35C3-4448-8B8F-4676656C0CAC';
var answerOnForm=_getFormElement(fieldName);
if(!answerOnForm){
if(currYesNo){_setFormElement('udf_under21_TA',currYesNo);}}})
('udf_under21_TA');
// MCI Youth Contact information - Direct Units etc is missing
setElFromEval(
[
['udf_iccinvolved_TA','udf_iccinvolved_TA'],['udf_wasicccontacted_TA','udf_wasicccontacted_TA'],['udf_safetypanreviewed_TA','udf_safetypanreviewed_TA'],['udf_wassafetyplancompleted_TA','udf_wassafetyplancompleted_TA'],['udf_familypartnerintervention_TA','udf_familypartnerintervention_TA'],['udf_whointitiatedfampartinter_TA','udf_whointitiatedfampartinter_TA'],['udf_interventionlocation_TA','udf_interventionlocation_TA'],['udf_nameofed_TA','udf_nameofed_TA'],['udf_homeless_TA','udf_homeless_TA']]);
setDtFromDm('udf_datetimearrivedined_TA','udf_datetimearrivedined_TA');// Missing UDF_COMmunitYBASEDINT
setElFromEval([['udf_whodirectedtoed_TA','udf_whodirectedtoed_TA'],['udf_directedbysection12_TA','udf_directedbysection12_TA'],['udf_stateinvolvement_TA','udf_stateinvolvement_TA'],['udf_involvedDMH_TA','udf_involvedDMH_TA'],['udf_involvedDYS_TA','udf_involvedDYS_TA'],['udf_involvedDDS_TA','udf_involvedDDS_TA'],['udf_involvedDCF_TA','udf_involvedDCF_TA'],['udf_primaryfundingsource_TA','udf_primaryfundingsource_TA'],['udf_commercialinsname_TA','udf_commercialinsname_TA'],['udf_benefitrequeststatus_TA','udf_benefitrequeststatus_TA'],['udf_diagnosistype_TA','udf_diagnosistype_TA'],['udf_medclearancerequeted_TA','udf_medclearancerequeted_TA'],['udf_whorequestedmedclear_TA','udf_whorequestedmedclear_TA'],['udf_medicalclearanceprovided_TA','udf_medicalclearanceprovided_TA'],['udf_whoprovidedmedclearance_TA','udf_whoprovidedmedclearance_TA']]);
(function(fieldName){
var people_id=_getElementFromXML(formXML,'people_id');
var gender_id=_getDataValue('people',people_id,'gender_id');
var result='';
if(!_getFormElement(fieldName)){
if(gender_id){
switch(gender_id){
case'AB51774C-2D91-401A-A604-3C8B4AC13119':result='EDD8F98B-D282-4145-997C-653E71F737D4';
break;
case'7B80D1E4-27A2-49E0-B7A3-697495F789C9':result='725A7DEA-1BD3-4F71-ACF8-FE7A0026A672';
break;
case'2120501D-E8DC-4641-8D60-12C099E79F40':result='F8505020-CCFF-4504-816A-3F0D1E754692';
break;
case'0C2E17E9-F5EC-4A23-A6AA-FC1C50235093':result='F8505020-CCFF-4504-816A-3F0D1E754692';
break;
default:result='C0DA946A-F0AD-4899-9C2D-C7123B6E1A36';
break;}_setFormElement(fieldName,result);}}})
('udf_gender_TA');
(function(fieldName){
var people_id=_getElementFromXML(formXML,'people_id');
_getElementFromXML(formXML,'actual_date');
// Getting error when including date. Check on DB. Removing for Now
// var condition = 'people_id = \'\'' + people_id + '\'\' AND is_deleted = 0 AND convert( DATE,address_date,101 ) <= convert( DATE,\'\'' + event_date + '\'\',101)';
var result=_getDataValue('address ','zip_code','people_id = \'\''+people_id+'\'\' AND is_deleted = 0','address_date DESC');
result=result?result.substring(0,5):'';
if(!_getFormElement(fieldName)){
if(result){_setFormElement(fieldName,result);}}})
('udf_zipcode_TA');
(function(fieldName){
var people_id=_getElementFromXML(formXML,'people_id');
var ethnicity=_getDataValue('people','ethnicity');
var result=ethnicity==='C21C949F-DE18-48E1-8133-7E999CB9CEEF'?'977497DC-9725-4DBC-9188-2AF053242399':'BE24AEBA-35C3-4448-8B8F-4676656C0CAC';
if(!_getFormElement(fieldName)){if(result){_setFormElement(fieldName,result);}}})
('udf_hispanicorigin_TA');
(function(fieldName){
var people_id=_getElementFromXML(formXML,'people_id');
var language_id=_getDataValue('people','primary_language');
var result='';
if(!_getFormElement(fieldName)){
if(language_id){
switch(language_id){
case'785F9693-7DE5-400D-B51E-F2EB894DE76A':result='781A58DE-5473-4A30-B9E1-18EF13DF3BF7';break;
case'540DF61D-FD6F-4A0C-9EBE-58D4B27C0E37':result='4AC644D8-D24A-4148-BBF8-251589719DF3';break;
case'728E73AA-C4E7-49C2-ADB8-B7303455FACC':result='F22FA373-F1AD-4CBE-A915-25AB455B1147';break;
case'28FA8610-B649-433D-A448-73C4486285AE':result='DF0C49C7-3A6C-4A50-85A6-4351DA9D50EA';break;
case'0D554F80-B5E9-49FB-BD77-2CB89AEBC786':result='8CE698D0-7C66-42E0-9248-4F51A18BFD19';break;
case'1128F1F6-D927-4E4A-AFF3-BA6755A479EB':result='000199F0-8E17-4699-91A9-700EC5947CA1';break;
case'A8CADB16-03DF-41BD-9C13-970FD2EE7914':result='D802201E-138F-40BA-96B2-74A430BD994F';break;
case'A4DCFB1C-9A3B-432A-93E5-6F9424BB5FB0':result='8A5242EA-2D95-4AE0-B07C-86F6916F2555';break;
case'5790D698-210D-4542-A2F2-5E6F280D9689':result='B1B6DE82-6C74-4626-A964-9097A4B14EED';break;
case'888D9B90-EBAD-4EB0-A080-A317B528D274':result='BB83A7E4-1448-44B3-A7F7-B4CEB7F1D990';break;
case'739C0CCA-CCAC-4DE8-A7E5-9AA4770AC5CD':result='717FDACE-A6EF-4DC7-81FC-D3B1319317E0';break;
case'9FA28B23-74E1-462E-8809-0453E9E4706E':result='FF5521A5-1BA0-48AE-9CB6-F651F8CECE3B';break;
case'1742A1C9-4DBE-4E89-B126-5604EB8C2305':result='DE558F58-D8BB-47FA-9715-FC7FA74CB239';break;
default:result='63EAFC8E-1F3B-44BF-B8DD-F38E930C0FD4';break;}_setFormElement(fieldName,result);}}})
('udf_primarylanguage_TA');
(function(fieldName){
_getFormElementDOM(fieldName).style.display='none';
_getFormElementDOM('caption_'+fieldName).style.display='none';
_formState(formXML,false);})
(loadEvalData);})();
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)