layui select下拉框、radio单选框 编辑回显

body部分 使用layui下拉框select、单选框radio

        这里 以域名类型和状态为例

        域名类型字段为official 0是非官网 1是官网

        状态字段status 1是正常访问 2是禁止访问

    <div class="layui-form layuimini-form">
        <div class="layui-form-item" id="ymlx">
            <label class="layui-form-label">域名类型</label>
            <div class="layui-input-block">
                <select name="official" id="official" >
                    <option value="">请选择</option>
                    <option value="0">非官网</option>
                    <option value="1">官网</option>
                </select>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">状态</label>
            <div class="layui-input-block">
                <input type="radio" name="status" value="1" title="正常访问" id="status_0">
                <input type="radio" name="status" value="2" title="禁止访问" id="status_1">
            </div>
        </div>
    </div>

js部分 给下拉框添加默认选择 单选框做判断

         这里需要注意一下 下拉框、单选框等都是在form模块中运用的 修改此类信息时需要在最后加form.render()语句更新渲染 

layui.use(['form'], function () {
        var form = layui.form,
            $ = layui.jquery;
    
        getCategory (id)
        async function getCategory (id) {                          //通过传id拿到要编辑的某条数据
            const res = await getData('url接口', {id})            //自己封装的接口调用
            let {official,admin_id,status } = res
            $('input[name="admin_id"]').val(admin_id)             
            $('#official option[value=' + official + ']').attr('selected', true)  //select下拉编辑回显回显
            if(status == 0){
                $('#status_0').attr('checked', true)
            }else{                                              //radio单选框编辑回显
                $('#status_1').attr('checked', true)
            }
            form.render()               //在form模块下,一定要记得写form.render更新渲染
        }
})

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
您好,针对您的问题,我可以给出以下思路: 1. 在 layui table 中使用下拉框,需要定义一个对应的 render 函数,在 render 函数中渲染下拉框,并将下拉框的值设置为对应的字典值。 2. 在进行数据字典翻译时,需要先将字典数据加载到前端,可以使用 ajax 请求后台接口获取字典数据。 3. 在进行表格数据渲染时,可以通过遍历表格数据,将需要翻译的字段进行翻译,并将翻译后的值设置为对应的下拉框选项。 下面是一个简单的示例代码,仅供参考: ```javascript // 定义一个字典数据对象 var dictData = { 1: '男', 2: '女' }; // 定义下拉框的 render 函数 function renderSelect(d) { var html = '<select lay-ignore>'; for (var key in dictData) { var selected = key == d.gender ? 'selected' : ''; html += '<option value="' + key + '" ' + selected + '>' + dictData[key] + '</option>'; } html += '</select>'; return html; } // 加载字典数据 $.ajax({ type: 'GET', url: '/dict/list', success: function(res) { dictData = res.data; } }); // 渲染表格 table.render({ elem: '#demo', cols: [[ {field: 'name', title: '姓名'}, {field: 'age', title: '年龄'}, {field: 'gender', title: '性别', templet: renderSelect} ]], data: [ {name: '张三', age: 18, gender: 1}, {name: '李四', age: 20, gender: 2}, {name: '王五', age: 22, gender: 1} ], done: function(res, curr, count) { // 在表格渲染完成后,遍历表格数据,将需要翻译的字段进行翻译 $('.layui-table-body table tr').each(function() { var genderTd = $(this).find('td[data-field="gender"]'); var genderValue = genderTd.text().trim(); genderTd.html(dictData[genderValue]); }); } }); ``` 以上代码仅供参考,具体实现需要根据您的实际需求进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值