<%@page import="com.hanweb.common.BaseInfo"%> <%@page import="com.hanweb.common.util.NumberUtil"%> <%@page import="com.hanweb.common.util.StringUtil"%> <%@page import="com.hanweb.common.util.mvc.Script"%> <%@page import="com.hanweb.jcms.plugins.search.service.Jcms_SearchBLF"%> <%@page import="com.hanweb.jcms.service.info.ManagerDefBLF"%> <%@page import="com.hanweb.jcms.util.SafeUtil"%> <%@page import="org.apache.commons.collections.CollectionUtils"%> <%@ page import="java.io.File" %> <%@ page import="java.util.List" %> <%@page contentType="text/html;charset=UTF-8"%> <%@ include file="config.jsp" %> <% //路径 String strSysPath = application.getRealPath(""); String strPath = strSysPath+File.separator +"jcms_files"+File.separator +"jcms"+strAppID+File.separator +"web"+strWebID + File.separator +"site"+File.separator; String strModulePath = strPath +"module" + File.separator +"search" + File.separator; String strConfigPath = strModulePath + "config/config.xml"; String strWebType = StringUtil.getString( xmlFile.getContent("webtype",strConfigPath )); /*动态加载词典类型的字段的options选项*/ String fieldname = SafeUtil.getSafeString(request.getParameter("fieldname")); String fieldid = SafeUtil.getSafeString(request.getParameter("fieldid")); int i_colid = NumberUtil.getInt(request.getParameter("i_colid")); String strFrameName = SafeUtil.getSafeString(request.getParameter("framename")); String[] strArrFieldName = fieldname.split(","); String[] strArrFieldID = fieldid.split(","); Jcms_SearchBLF blf = Jcms_SearchBLF.getInstance().init("1"); int i_fieldid = 0; String vc_fieldname = ""; String strReturn = " var oOption = null;\n"; if(strArrFieldName.length > 0 && strArrFieldName.length == strArrFieldID.length){ boolean islawlass = false; for(int i=0;i pField = blf.getPField(vc_fieldname); boolean isTrue = false; String strSourceInfoName = ""; if(CollectionUtils.isNotEmpty(pField)){ for(int nm = 0 ; nm < pField.size() ; nm++){ for(int nm2 = 0 ; nm2 < strArrFieldName.length ; nm2++){ String vc_fieldname2 = StringUtil.getString(strArrFieldName[nm2]); String regEx2 = "field\\_[0-9]+"; boolean islawlass2 = vc_fieldname2.matches(regEx2); if(vc_fieldname2.length() == 0 || !islawlass2) continue; int i_fieldid2 = NumberUtil.getInt(strArrFieldID[nm2]); if(i_fieldid2 <= 0) continue; if(vc_fieldname2.equals(pField.get(nm))){ isTrue = true; strSourceInfoName = vc_fieldname2; } } } } if(isTrue){ ManagerDefBLF mBlf = ManagerDefBLF.getInstance(); mBlf.setProperties(i_colid); String strSourceInfo = mBlf.getSourceInfo(strSourceInfoName); // 找出父级属性的来源表 strSourceInfo = StringUtil.getString(strSourceInfo); if(StringUtil.isEmpty(strSourceInfo)) { continue; } String strChildSrc = mBlf.getChildSrc(vc_fieldname); // 本属性来源表 strChildSrc = StringUtil.getString(strChildSrc); String[] strArr1 = StringUtil.split(strChildSrc, ";"); if(strArr1[0].indexOf("@") != -1) { continue; } if(strArr1 == null || strArr1.length < 2){ continue; } //获取来源栏目的ID String strTable = StringUtil.getString(strArr1[0]); String strField = StringUtil.getString(strArr1[1]); int nPot = strField.indexOf("-");//如果是元数据栏目,,“-”后面是栏目ID if(nPot != -1){ strField = strField.substring(0,nPot); } strArr1 = strTable.split("_");// strArr[2]为栏目id (jcms_webid_colid) if(strArr1.length < 3){ continue; } String strCataid = StringUtil.getString(strArr1[2]); String[][] strArr = mBlf.getField(strCataid, strSourceInfo, strField, strTable, ""); if(strArr != null && strArr.length > 0){ strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").empty();\n" ; strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").html(\""; for(int j=0;j"+strTemp+""; } strReturn += "\");"; } }else{ String[][] strArr = blf.getDickOptionArr(vc_fieldname,i_colid,i_fieldid); if(strArr != null && strArr.length > 0){ strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").empty();\n" ; strReturn += "$(parent.document.body).find(\"select[name='"+vc_fieldname+"']\").html(\""; for(int j=0;j"+strTemp+""; } strReturn += "\");"; } } } } Script script = Script.getInstanceOnly(); String jquerySitePath = BaseInfo.getContextPath() + "/jcms_files/jcms" + strAppID + "/web"+strWebID +"/site/module/jslib/jquery/jquery.js"; if( strWebType.equals("2")) { jquerySitePath = "/module/jslib/jquery/jquery.js"; } out.println(""); out.println(script.addScript(strReturn).getScript()); %>