Discuz addrow函数解析

2022-06-19 0 1,042

用于在表格中插入新行, 可结合实际需求自行二开

函数定义:static\js\common.js

使用示范:

<!DOCTYPE html>
<html>
<head>
    <title>discuz中addrow函数demo</title>
    <meta charset="utf-8">
</head>
<body>
<script type="text/javascript">
    var addrowdirect = 0;
    var addrowkey = 0;
    function addrow(obj, type) {
        var table = obj.parentNode.parentNode.parentNode.parentNode;//父节点
        if(!addrowdirect) {
            var row = table.insertRow(obj.parentNode.parentNode.rowIndex);
        } else {
            var row = table.insertRow(obj.parentNode.parentNode.rowIndex + 1);
        }
        var typedata = rowtypedata[type];
        console.log(row);
        for(var i = 0; i <= typedata.length - 1; i++) {
            var cell = row.insertCell(i);//插入一个空的 <td> 元素
            console.log(i);
            cell.colSpan = typedata[i][0];//横跨列数
            var tmp = typedata[i][2];
            if(typedata[i][3]) {
                cell.className = typedata[i][4];
            }
            tmp = tmp.replace(/\{(n)\}/g, function($1) {return addrowkey;});
            tmp = tmp.replace(/\{(\d+)\}/g, function($1, $2) {return addrow.arguments[parseInt($2) + 1];});
            cell.innerHTML = tmp;
        }
        addrowkey ++;
        addrowdirect = 0;
    }
    var rowtypedata = [
        [
            [1,'<input type="text" name="test1" class="px"/>'],
            [1,'<input type="text" name="test2" class="px"/>'],
        ],
    ]
</script>
    <form name="createform" method="post" autocomplete="off" action="">
        <table class="dt mbw" id="client">
            <tr><th class="o">列表1</th><th>列表2</th></tr>
            <tr>
                <td>
                    <input type="text" name="test1" class="px"/>
                </td>
                <td>
                    <input type="text" name="test2" class="px"/>
                </td>
            </tr>
            <tr><td><a class="addtr" onclick="addrow(this, 0)" href="javascript:;" rel="external nofollow" >增加</a></td><td></td></tr>
        </table>
        <div class="pbm">
            <button value="true" class="pn pnc" name="pluginsbt" type="submit"><strong>提 交</strong></button>
        </div>
    </form>
</body>
</html>
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

黑龙江省声美网络科技有限公司 discuz Discuz addrow函数解析 http://www.fuwenhao.com/368.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务