Js/JQuery根据模板生成页面元素

编写fotmat函数

function format(source, params) {
    if (arguments.length === 1)
        return function () {
            var args = $.makeArray(arguments);
            args.unshift(source);
            return $.format.apply(this, args);
        };
    if (arguments.length > 2 && params.constructor !== Array) {
        params = $.makeArray(arguments).slice(1);
    }
    if (params.constructor !== Array) {
        params = [params];
    }
    $.each(params, function (i, n) {
        source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
    });
    return source;
};

调用目标并生成元素

  function createTaskBox(taskList) {
            console.log(taskList)
            $.each(taskList, function (index, item) {
                console.log(index)
                let title = (index+1) + '.' + item.taskKey
                let handler = item.receivername
                let handlerPhone = item.receiverPhone
                let action = item.taskKey
                let dealTime = item.updateTime
                let template = `  <div class="task-box">
                <div class="task-title">{0}</div>
                <div class="flex-content taskInfo">
                    <div class="label">处理人:</div>
                    <div class="content">
                        <span class="handler">{1}</span>
                        <div class="right-float">
                            处理人手机号码:
                            <span>{2}</span>
                        </div>
                    </div>
                </div>
                <div class="flex-content taskInfo">
                    <div class="label">执行动作:</div>
                    <div class="content">
                        <span class="action">{3}</span>
                        <div class="right-float">
                            处理时间:
                            <span class="handleTime">{4}</span>
                        </div>
                    </div>
                </div>
            </div>`
                let taskResult = format(template, title, handler, handlerPhone, action, dealTime)//将数据填入模板
                $('#task-list').append(taskResult + '')
            })
            const last = $('.task-box').last();
            last.children('.task-title').addClass('act')
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值