Appearance
字段类型支持与自定义
系统字段控件目前支持:
- 文本控件:
- 数值控件:
- 下拉控件:
- 多选下拉控件:
- 可编辑下拉控件:
- 选择窗口:
- 选择窗口(多选):
- 复选框:
- 日期控件:
- 日期时间控件:
- 仅时间控件:
- 仅时分控件:
- 年份控件:
- 月份控件:
- 图片上传控件:
- editor富文本编辑器控件:
- 自定义控件:
自定义控件仅支持Grid编辑页面,form页面不支持。
自定义控件需要重写defEditTableCell方法:
javascript
//自定义编辑列
function defEditTableCell(field, value,row, $element,runAll){
if($element.find('select').length===0){
// field 为选择框
varcontrol_name=row["datarule_name"];
if(value==null||value=="")value=row["has_datarule_name"];
if(control_name==null||control_name=="") return;
varnames=control_name.split(";");
varoptions="",optionJson={};
for(var i=0;i<names.length;i++){
var option=names[i];
if(option.indexOf(",")<0) continue;
optionJson[option.split(",")[0]]=option.split(",")[1];
}
for(var key in optionJson){//遍历设置options
options+='<optionvalue="'+key+'"'+((value+";").indexOf(key+";")>-1?"selected":"")+'>'+optionJson[key]+'`</option>`';
}
var$select = $("<selectclass='form-control' multiple='multiple' data-live-search='true' >"+options+"`</select>`");//multiple
var blur=function(e){
let index =$element.parent().data('index'),
selected = $select.val(),
tdValue =selected.join(";") + (selected.length?";":"");
if (tdValue != value) {//数据修改过
//更新最新值到row
var rows =$table.bootstrapTable('getData', {useCurrentPage: true, includeHiddenRows:true});
rows[index][field] =tdValue;
rows[index]["isUpdateData"] = "1";//标记记录被修改
hasDuty=true;
}
//if(editData[field]["formatter"]==null||typeof(editData[field]["formatter"])=="undefined"||editData[field]["formatter"]=="")$element.html("" + tdValue);
// else$element.html(eval(editData[field]["formatter"]+"(tdValue,row,index)"));
if(hasDuty) $element.css("border-bottom","2px dashed #F00");
};
$element.html($select);
$select.select2({
multiple:true,
minimumResultsForSearch: 10,
width: "100%",
templateResult: function(result, container) {
return result.text
}
}).on("change",blur);
// $element.find(".select2-selection__choice__remove").on("click",function() {
// alert(222);
// });
}
}