jquery日志模块 包含生成txt文件(不需要后台)

先整个DIV装日志 样式随便整

<div id="model_logs" style="width:500px;height:700px;padding:10px;"></div>

js: 

和后台交互 需要打印的日志调用outLogs("需要打印的日志");

我写的新日志加在最前面一行 需要用换顺序的prepend改成append丢日志div就行了

//输入日志
function outLogs(log) {
    var myDate = dateFormat("YYYY mm-dd HH:MM:SS", new Date());
    $("#model_logs").prepend('<p>[' + myDate + '] ' + log + '</p>');
}


//生成下载日志文件
function downloadLogs() {
    var logs = $("#model_logs").html().replace(/<p>/g, "");
    //替换</p>为"\r\n" windows txt中的换行符
    logs = logs.replace(/<\/p>/g, "\r\n");
    var filename = dateFormat("YYYYmmddHHMMSS", new Date()) + ".txt";
    var element = document.createElement('a');
    element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(logs));
    element.setAttribute('download', filename);
    element.style.display = 'none';
    document.body.appendChild(element);
    element.click();
    document.body.removeChild(element);
}

//格式化时间
function dateFormat(fmt, date) {
    let ret;
    const opt = {
        "Y+": date.getFullYear().toString(),        // 年
        "m+": (date.getMonth() + 1).toString(),     // 月
        "d+": date.getDate().toString(),            // 日
        "H+": date.getHours().toString(),           // 时
        "M+": date.getMinutes().toString(),         // 分
        "S+": date.getSeconds().toString()          // 秒
        // 有其他格式化字符需求可以继续添加,必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmt);
        if (ret) {
            fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        }
        ;
    }
    ;
    return fmt;
}

 

界面:

 

调用downloadLogs()导出的TXT如图:

 

 

 

 

顺颂时祺

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值