Przeglądaj źródła

【新项目】【看板项目】【模板设置导入xml检验xml格式】

luhg 8 lat temu
rodzic
commit
3ba6fb68d9

+ 24 - 2
kanban-console/src/main/webapp/resources/app/view/template/templateeditpanel.js

@@ -87,8 +87,6 @@ Ext.define('erp.view.template.templateeditpanel',{
 				}
 			}]
 		}).show();
-		
-
 	},
 	editPanelRepaint:function(){
 		var me = this;
@@ -101,12 +99,36 @@ Ext.define('erp.view.template.templateeditpanel',{
 			if(!xml){
 				Ext.Msg.alert('提示','请先输入内容');
 			}else{
+				var bol = me.validateXmlFormat(xml);
+				if(!bol){
+					return;
+				}
 				record.set('content',xml);
 				templateList.fireEvent('repaintcomponent',templateList,record);		
 				Ext.getCmp('importWin').close();
 			}
 		}		
 	},
+	validateXmlFormat:function(xml){
+		if(DOMParser){
+	        var parser = new DOMParser(),
+	            xmldom, 
+	            errors;
+	        try {
+	            xmldom = parser.parseFromString(xml, "text/xml");
+	            errors = xmldom.getElementsByTagName("parsererror");
+	            if (errors.length > 0){
+	                throw new Error("XML Parsing Error:" + (new XMLSerializer()).serializeToString(xmldom, "text/xml"));
+	            }
+	            return true;
+	        } catch (ex) {
+	        	Ext.Msg.alert('提示','XML格式有误:'+ex.message);
+	        	return false;
+	        }        					
+		}else{
+			return true;
+		}
+	},
 	exportXml:function(){
 		var me = this;
 		var builderPanel = Ext.getCmp('templatebuilderpanel');