Thursday, 21 de February de 2008
Olá pessoal,
Imagine um cenário onde um GridView com 15 colunas e um checkbox em cada linha para selecionar.
Toda vez que precisarmos selecionar uma linha do GridView seria um saco! Pois caso o checkbox esteja na última coluna, o ato de selecionar vira algo não muito confortável.
A partir de agora, criaremos um mecanismo que facilitará nossa vida ao selecionar cada linha de um GridView!
Código JavaScript:
function Selecionar(elemento,cordefundo)
{
var Inputs = elemento.getElementsByTagName("input");
var cor = elemento.style.backgroundColor; //manter a cor default do elemento
for(var i = 0; i < Inputs.length; ++i)
{
if(Inputs[i].type == 'checkbox')
{
Inputs[i].checked = !Inputs[i].checked;
elemento.style.backgroundColor = cordefundo;
elemento.onclick = function()
{
Selecionar(this,cor);
};
}
}
}
No script acima, recebo a referência da linha [elemento] do controle [GridView] em seguida obtenho todos os inputs do elemento.
Depois que encontro o meu CheckBox, efetuo a operação desejada [selecionar/desselecionar] em seguida mudo a cor de fundo do elemento e modifico o evento onclick.
Adicionando a função Selecionar(elemento,cordefundo) nas Linhas do GridView:
No PreRender do GridView adicione o código abaixo.
protected void gvSelecao_PreRender(object sender, EventArgs e){
GridView gv = (GridView)sender;
foreach (GridViewRow row in gv.Rows)
row.Attributes.Add("onclick", "Selecionar(this,'#FFFF00');");
}
Aqui estamos adicionando nossa função em cada linha de nosso GridView.
Com essa implementação só precisamos clicar na linha para selecionar nosso checkbox.
Até a próxima.
Nenhum comentário, seja o primeiro a comentar.
Para adicionar um comentário você deve efetuar o
login