jeesite开发遇坑日记(前端)
- 使用DataGrid时横向滚动条不出现
{
header: '${text("事件记录时间")}',
fixed: true,
name: 'eventTime',
index: 'a.event_time',
width: 250,
align: "center"
},`
解决:需要在每一行加上
fixed: true
(name类比dataIndex,index类比key)。
- 上传文件的按钮失效
<#form:fileupload id="upload1" bizKey="${user.id}" bizType="user_upload1"
uploadType="all" class="required" readonly="false"/>
(1)改变组件显示隐藏或组件的位置改变造成。
解决:在控制显隐控件后或onload事件后执行如下代码
if (typeof window.webuploaderRefresh == 'function'){
window.webuploaderRefresh();
}
(2)切换 Bootstrap Tab 页签后点击上传按钮没反应。
$(function(){
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
if(typeof window.webuploaderRefresh == 'function'){
window.webuploaderRefresh();
}
});
});
(3)旧版本中可能会出现子表左右滚动后点击上传按钮没反应:
$(function(){
$('#dataGrid').parent().scroll(function (e) {
if(typeof window.webuploaderRefresh == 'function'){
window.webuploaderRefresh();
}
});
});
-
Form
表单组件使用常用属性
(1)
path
:类比name,在使用path时,接收form上绑定的model属性的值,如
name="userName" value="${user.userName}"
。如果指定了path则会自动生成name和value,没有指定id,会自动生成。不想自动绑定,则将path替换成name,否则你设置的value将不生效。
(2)
id
元素的ID,不设置则与name相同。
(3)
model
绑定Model的对象,如
${user}
(4)
action
表单请求的地址,url
(5)
method
请求的方法,默认post
(6)
enctype
发送之前进行数据编码,上传文件时指定:
multipart/form-data
-
<#form:select path="menuType" dictType="sys_menu_type" class="form-control required" />
枚举使用时,其中dictType获取字典标签,像后端要。在dataGrid中处理如下:
{
header: '${text("菜单类型")}',
fixed: true,
name: 'menuType',
index: 'a.menu_Type',
width: 250,
align: "center",
frozen: true,
formatter: function (val, obj, row, act) {
return js.getDictLabel(${@DictUtils.getDictListJson('sys_menu_type')}, val,'${text("")}', true)
}
}
},
- Form组件的表单验证
$("#inputForm").validate({
submitHandler: function(form){
// 提交表单
//$(form) 自动获取所有form中的path对应的值
js.ajaxSubmitForm($(form), function(data){
js.showMessage(data.message);
//提交成功,关闭表单并刷新列表
if(data.result == Global.TRUE){
js.closeCurrentTabPage(function(contentWindow){
contentWindow.page();
});
}
}, "json");
}
});