如何在jQuery

时间:2017-06-26 23:57:08

标签: jquery asp.net

我有以下GridView

Grid

如果我编辑grid上已存在的行并再次添加它,则会出现以下问题:它不会保留其所属的序列号,并重复添加的最后一行的序列号。< / p>

我需要做什么:编辑线条并再次添加后,请保留原始序列。

OB的。包含新行(序列)已经是动态的,只需要纠正已经存在于网格中的行的编辑

示例:

我再次编辑并添加了第一个项目。并且他没有保留原始序列号(1)并且仍然重复添加的最后一个序列。

Grid edited

代码:

添加行:

 function AdicionarLinha(faixa, vlrInicial, vlrFinal, vlrBonus) {
    faixa = 1;
    var dados = new Array();
    j = 0;
    var repetido = false;
    $("#<%=gridFxValor.ClientID%> tr").each(function () {
        if (($(this).find('td:eq(2)').text()).trim().length > 0 || !($(this).find('td:eq(2)').text()).trim() == undefined && $(this).find('th:eq(2)').text().length <= 0) {
            if ($(this).find('td:eq(2)').text() == faixa && $(this).find('td:eq(2)').text() == vlrInicial && $(this).find('td:eq(2)').text() == vlrFinal && $(this).find('td:eq(2)').text() == vlrBonus) {
                $("#<%=txtFxCodigo.ClientID%>").val('');
                $("#<%=txtFxVlrInicial.ClientID%>").val('');
                $("#<%=txtFxVlrFinal.ClientID%>").val('');
                $("#<%=txtFxVlrBonus.ClientID%>").val('');
                criarDivAlert("Alerta", "Faixa de valor já inserida.");
                exibirAlerta(false);
                repetido = true;
            }               
            faixa++;
        }
    });
    if (repetido == false) {
        $("#<%=gridFxValor.ClientID%> tr").each(function () {
            if (($(this).find('td:eq(2)').text()).trim().length > 0 || !($(this).find('td:eq(2)').text()).trim() == undefined && $(this).find('th:eq(2)').text().length <= 0) {
                var linha = Array();
                i = 2;
                $(this).find('td').each(function () {
                    if ($(this).text() != '') {
                        linha[i - 2] = ($(this).text()).trim();
                        i++;
                    }
                });
                $(this).remove();
                dados[j++] = linha;
            }
        });
        dados[dados.length] = new Array(faixa, vlrInicial, vlrFinal, vlrBonus);
        SetarDadosGrid(dados);
    }
}

设置网格数据:

function SetarDadosGrid(dados) {
    $("#<%=gridFxValor.ClientID%>").append("");
    $("#<%=hdfTable.ClientID%>").val('');
    LimparGrid();
    var hidden = "";
    for (i = 0; i < dados.length; i++) {
        var string = "";
        string += "<tr id='tr" + i + "' style='color:#333333;background-color:#F7F6F3;'>";
        string += "<td align='center'>";
        string += "<input type='image' name='ctl00$ContentPlaceHolder1$gridFaixa$ctl02$btnExcluirBonusValor' id='d" + i + "' onclick='javascript: DeletarLinha(this.id);' title='Excluir' text='Delete' src='../images/svg/delete.svg' style='width:15px;border-width:0px;'>";
        string += "</td><td align='center'>";
        string += "<input type='image' name='ctl00$ContentPlaceHolder1$gridFaixa$ctl02$btnEditarBonusValor' id='e" + i + "' onclick='EditartarLinha(this.id);' title='Editar' text='Editar' src='../images/svg/edit.svg' style='width:15px;border-width:0px;'></td>";
        for (k = 0; k < dados[i].length; k++) {
            string += "<td>";
            string += "<span>" + dados[i][k] + "</span>";
            string += "</td>";

        }


        hidden += Array(dados[i][0] + "$" + dados[i][1] + "$" + dados[i][2] + "$" + dados[i][3] + "|");
        string += "</tr>";
        $("#<%=gridFxValor.ClientID%>").append(string);
    }


    $("#<%=hdfTable.ClientID%>").val(hidden);
    $("#fxOferta").show();
    $("#<%=txtFxCodigo.ClientID%>").val('');
    $("#<%=txtFxVlrInicial.ClientID%>").val('');
    $("#<%=txtFxVlrFinal.ClientID%>").val('');
    $("#<%=txtFxVlrBonus.ClientID%>").val('');
}

编辑行:

function EditartarLinha(id) {
    var tr = document.getElementById("tr" + id.trim().replace('e', ''));
    $("#<%=txtFxCodigo.ClientID%>").val($(tr).find('td:eq(2)').text());
    $("#<%=txtFxVlrInicial.ClientID%>").val($(tr).find('td:eq(3)').text());
    $("#<%=txtFxVlrFinal.ClientID%>").val($(tr).find('td:eq(4)').text());
    $("#<%=txtFxVlrBonus.ClientID%>").val($(tr).find('td:eq(5)').text());
    tr.remove();
    AtualizaHidden();

0 个答案:

没有答案