EFMultiSelect 下拉多选
<EF:EFMultiSelect ename="inqu-0-MAT_TYPE"
cname="工位" template="#=valueField#-#=textField#"
colWidth="3" ratio="3:9"
filter="contains"
autoClose="false">
<EF:EFCodeOption codeName="jhy.kf.station"/>
</EF:EFMultiSelect>
//样式区分 联动
IPLATUI.EFSelect = {
"inqu-0-styleDev": {
change: function (e) { //获取改变值
console.log("研究院")
// queryProduct("#inqu_status-0-matType", "KFSY14", "query1");
var inInfo = new EiInfo();
inInfo.setByNode("inqu");
EiCommunicator.send("KFSY14", "query1", inInfo, {
onSuccess: function (e) {
//动态选择展示或隐藏EFOption标签
const zhi = $("#inqu-0-styleDev").val();
const list = e["blocks"][zhi]["rows"];
const datasource = new kendo.data.DataSource({
data:[
{textField:'',valueField:''},
]
});
if(!$.isEmptyObject(list)){
datasource.add({textField:'',valueField:''});
for (let i = 0; i < list.length; i++) {
datasource.add({textField:list[i][0],valueField:list[i][1]})
}
}
IPLAT.EFMultiSelect.setDataSource($("#inqu-0-matType"),datasource);
}, onFail: function (e) {
NotificationUtil("查询表信息异常", "error");
}
}, {async: false});
}
}
};
EFGrid 自定义下拉框
service
/**
* 根据检测中类查询检测标准
*
* @param inInfo
* @return
*/
public EiInfo queryEquipmentModel(EiInfo inInfo) {
EiInfo outInfo = new EiInfo();
try {
Map paramMap = new HashMap();
// paramMap.put("type", "1");
List<Map> equipmentModelList = dao.query("CPBS01.equipmentModelList", paramMap);
//添加一个空数据便于自定义下拉框选择
Map map = new HashMap();
map.put("EQUIPMENT_CODE", "");
map.put("EQUIPMENT_NO", "");
map.put("EQUIPMENT_NAME", "");
equipmentModelList.add(map);
outInfo.set("equipmentModelList", equipmentModelList);
} catch (Exception ex) {
inInfo.setStatus(EiConstant.STATUS_FAILURE);
inInfo.setMsg("查询失败!" + ex.getMessage());
logger.error("查询失败!" + ex.getMessage());
}
return outInfo;
}
jsp
<EF:EFRegion id="result" title="记录集">
<EF:EFGrid blockId="result" autoDraw="no" personal="true" checkMode="multiple,row">
<EF:EFColumn ename="id" cname="ID" maxLength="255" hidden="true"/>
<EF:EFComboColumn ename="middleCode" cname="检测项中类" align="center" width="200" filter="contains"
columnTemplate="#=textField#">
<EF:EFCodeOption codeName="jhy.bc.middleTestItem"/>
</EF:EFComboColumn>
<EF:EFColumn ename="equipmentModel" cname="型号" maxLength="255"/>
<EF:EFColumn ename="equipmentName" cname="设备名称" maxLength="255"/>
<EF:EFColumn ename="equipmentNo" cname="设备号" maxLength="255" hidden="true"/>
</EF:EFGrid>
</EF:EFRegion>
js
IPLATUI.EFGrid = {
"result": {
columns: [
{
field: "equipmentModel",
editor: function (container, options) {
var input = $('<input style="width: 200px"/>');
var dataSource;
input.attr("name", options.field);
input.attr("id", options.field);
input.appendTo(container);
var eiInfo = new EiInfo();
eiInfo.set("type", "1");
EiCommunicator.send("CPBS01", "queryEquipmentModel", eiInfo, {
onSuccess: function (ei) {
dataSource = ei.get("equipmentModelList");
}, onFail: function (ei) {
}
}, {async: false});
input.kendoDropDownList({
valuePrimitive: true,
dataTextField: "EQUIPMENT_CODE",
dataValueField: "EQUIPMENT_CODE",
dataSource: dataSource,
template: "#=EQUIPMENT_CODE#",
filter: "contains"
});
}
}
]
},
}