JSP页面Table的数据拼接

系统业务需要
表格table的数据,根据用户的选择来加载的

append()方法

拼接元素

function selectAssayItem(el, id) {
    var sampBizModeId = $(el).closest("tr").find("td[columnname='sampBizModeId']").text();
    var testObjectId = $(el).closest("tr").find("td[columnname='testObjectId']").text();
    if (!sampBizModeId) {
        $.app.alert({
            title: "警告",
            message: "请先选择检测对象!"
        });
        return;
    }
    var url = ctx + "/biz/assay/assay-order/select-assay-item?sampleId=" + id + "&testObjectId=" + testObjectId + "&sampBizModeId=" + sampBizModeId;
    $.app.modalDialog("选择检测项目", url, {
        width: 980, height: 650,
        ok: function (modal) {
            if ($('#table-fxxmmx').find("tbody  tr").length == 0) {
                $.app.alert({
                    title: "提示",
                    message: "请选择需要检测的项目"
                });
                return;
            }
            //获取form的所有字段和值
            var selectItemTableData = getTableContent($('#table-fxxmmx'));
            //获取化验项目
            var assayItemNames = "";
            var assayItems = JSON.parse(selectItemTableData);
            $.each(assayItems, function (j, item) {
                if (assayItemNames == "") {
                    assayItemNames += item['assayItemName'];
                } else {
                    assayItemNames += "," + item['assayItemName'];
                }
            });
            var money = $('#shoufeijine').val();

            //获取选择的组合项目ids
            var selectItemCateIds = "";
            var checkbox = $.table.getAllSelectedCheckbox($("#table-zhxm"));
            if (checkbox.length) {
                var arr = checkbox.serializeArray();
                $.each(arr, function (i, item) {
                    if (selectItemCateIds == "") {
                        selectItemCateIds += item.value;
                    } else {
                        selectItemCateIds += "," + item.value;
                    }
                });
            }
            //把选择的数据写入表格中
            $(el).parent().parent().find('td').each(function (i, td) {
                if ($(td).attr('columnname')) {
                    if ($(td).attr('columnname') == 'selectItemTableData') {//化验项目table数据
                        $(td).html('');
                        $(td).append(selectItemTableData);
                    } else if ($(td).attr('columnname') == 'totalCost') {
                        $(td).html('');
                        $(td).append(money);
                    } else if ($(td).attr('columnname') == 'assayItemNames') {//化验项目中文名称
                        $(td).html('');
                        $(td).append(assayItemNames);
                    } else if ($(td).attr('columnname') == 'selectItemCateIds') {//选择的化验项目分组
                        $(td).html('');
                        $(td).append(selectItemCateIds);
                    }
                }
            });

            $.app.cancelModelDialog();
            // $.table.initCheckbox($('#sampleTable'));


            //选择完化验项目之后需要重新遍历表格的化验费用   写入委托单的表单中
            var assayCostCount = 0;
            $('#sampleTable').find("tbody  tr").each(function (i, item) {
                $.each(item.childNodes, function (j, item) {
                    var columnName = $(item).attr("columnName");
                    if (columnName == "totalCost") {
                        var value = item.innerHTML;
                        if (value) {
                            assayCostCount += parseFloat(value);
                        }
                    }
                });
            });

            $("#assayCostCount").val(assayCostCount);
            $("#sampRegAmount").val($('#sampleTable').find("tbody  tr").length);//样品数量
        },
        showAfter: function () { //回写已经选择的化验项目信息
            var selectItemTableData = "";
            var money = "";
            var selectItemCateIds = "";
            //把选择的数据写入表格中
            $(el).parent().parent().find('td').each(function (i, td) {
                if ($(td).attr('columnname')) {
                    if ($(td).attr('columnname') == 'selectItemTableData') {//化验项目table数据
                        selectItemTableData = $(td).html();
                    } else if ($(td).attr('columnname') == 'totalCost') {
                        money = $(td).html();
                    } else if ($(td).attr('columnname') == 'selectItemCateIds') {
                        selectItemCateIds = $(td).html();
                    }
                }
            });
            if (selectItemTableData != "") {
                $("#shoufeijine").val(money);
                var jcxmTrs = $("#table-jcxm").find("tbody tr");
                var jsonData = JSON.parse(selectItemTableData);
                //遍历单项表格 然后把包括在分组中的化验项目勾上
                jcxmTrs.each(function (i, tr) {
                    var itemId = $(tr).find("td[columnname='id']").html();
                    for (var i = 0, len = jsonData.length; i < len; i++) {
                        if (itemId == jsonData[i].assayBizItemId) {
                            var cb = $(tr).find(":checkbox");
                            cb.prop("checked", true);
                        }
                    }
                });

                //添加已经选择的化验项目
                $("#table-fxxmmx tbody").html('');
                $.each(jsonData, function (j, item) {
                    var checked = "";
                    if (item.reportable == 1) {
                        checked = 'checked="checked"';
                    } else {
                        checked = '';
                    }
                    var tr = $('<tr></tr>');
                    var td0 = '<td columnName="reportable" class="check"><input name="ids" type="checkbox" ' + checked + ' ></td>';
                    var td1 = $('<td columnName="assayItemName" ></td>').append(item.assayItemName);

                    var dataValue ="";
                    var dataName = "";
                    if (item.assayStandard) {
                        dataValue = item.assayStandard;
                        dataName = item.assayStandardName;
                    }
                    var td2 = $('<td columnName="assayStandard" data-dataId="'+item.assayItemNo+'"></td>').append('<a href="#"  data-dataId="'+item.assayItemNo+'" data-value="'+dataValue+'" >' + dataName + '</a>'); /*检测标准*/

                    var td3 = $('<td columnName="settSum"></td>').append(item.settSum != null ? item.settSum : item.assayItemCost);
                    var td4 = $('<td columnName="assayBizItemId" style="display: none"></td>').append(item.assayBizItemId);
                    var td5 = $('<td columnName="bizItemId" style="display: none"></td>').append(item.assayItemNo);
                    var a = $('<a href="#" onclick="del(this);"><i class="icon-trash"></i> </a>');
                    var td6 = $('<td style="text-align: center"></td>').append(a);
                    tr.append(td0).append(td1).append(td2).append(td3).append(td4).append(td5);//.append(td6);
                    // 添加保存的样品信息到表格
                    $("#table-fxxmmx tbody").append(tr);
                    if (item.assayBizItemCharge) {
                        money += item.assayBizItemCharge;
                    }
                });
                $.table.initCheckbox($('#table-fxxmmx'));

            }
            if (selectItemCateIds != "") {
                var zhxmTrs = $("#table-zhxm").find("tbody tr");
                // 遍历单项表格 然后把包括在分组中的化验项目勾上
                zhxmTrs.each(function (i, tr) {
                    var itemId = $(tr).find("td[columnname='id']").html();
                    if (selectItemCateIds.indexOf(itemId) != -1) {
                        var cb = $(tr).find(":checkbox");
                        cb.prop("checked", true);
                    }
                });

            }
        }
    });
}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值