layui初始化页面数据,下拉框筛选条件默认值查询
·
1.html
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">状态:</label>
<div class="layui-input-inline">
<select class="layui-select" lay-affix="clear" id="status" name="status" autocomplete="off">
<option value="">全部</option>
<option value="wait" selected>待审核</option>
<option value="approve">审核通过</option>
<option value="disapprove">审核不通过</option>
</select>
</div>
<button class="layui-btn" id="queryButton" lay-submit lay-filter="query">
<i class="layui-icon layui-icon-search"></i>
查询
</button>
</div>
</form>
2.script
<script>
let queryParam = ${QOJSON};
layui.use(function () {
var form = layui.form;
var table = layui.table;
let url = '${contextPath}/record/query';
let cols = [
[
{
title: '序号',
type: 'numbers',
},
{
title: '姓名',
field: 'name',
width: 100
},
{
title: '手机号',
field: 'mobile',
width: 130
},
{
title: '状态',
field: 'status',
templet: '{{statusValue(d.status)}}',
width: 100
},
{
title: '操作',
toolbar: '#record-toolbar',
width: 180
}
]
];
// queryParam.status 未定义,初始化查询 使用 select 的默认选中值 "wait"
queryParam.status = document.querySelector('#status').value;
table.render({
elem: '#pageTable',
method: 'post',
url: url,
cols: cols,
contentType: 'application/json',
where: queryParam,
request: {
pageName: 'pageNo',
limitName: 'pageSize'
},
toolbar: '#table-toolbar',
defaultToolbar: ['filter'],
parseData: function (res) {
return {
"code": res.code,
"msg": res.message,
"count": res.data.totalCount,
"data": res.data.list
};
},
page: true
});
// 删除queryParam.status属性,防止影响表单查询条件赋值
delete queryParam.status
form.on('submit(query)', function (data) {
table.reload('pageTable', {
where: {...removeEmptyValues(data.field), ...queryParam},
request: {
pageName: 'pageNo',
limitName: 'pageSize'
},
page:{
curr: 1
}
});
return false;
});
});
function removeEmptyValues(obj) {
return Object.keys(obj)
.filter(key => obj[key] != null && obj[key] !== '') // 过滤掉空值和未定义的值
.reduce((result, key) => {
result[key] = obj[key];
return result;
}, {});
}
</script>
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)