我有以下GridView
如果我编辑grid
上已存在的行并再次添加它,则会出现以下问题:它不会保留其所属的序列号,并重复添加的最后一行的序列号。< / p>
我需要做什么:编辑线条并再次添加后,请保留原始序列。
OB的。包含新行(序列)已经是动态的,只需要纠正已经存在于网格中的行的编辑
示例:
我再次编辑并添加了第一个项目。并且他没有保留原始序列号(1)并且仍然重复添加的最后一个序列。
代码:
添加行:
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();