JavaScript Confirmar não funciona?
-
19-09-2019 - |
Pergunta
Eu uso girdview. e para apagar eu uso LinkButton em cada linha.
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
((LinkButton)e.Row.Cells[12].Controls[0]).Attributes.Add("onClick",
"return false;"
);
}
}
Agora, eu não esperaria nada acontecer quando eu Link Button
é clicado porque OnClick
retornos false
. Certo?
MAS
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if(e.CommandName=="SIL")
{
String _id = GridView1.DataKeys[Int32.Parse(e.CommandArgument.ToString())].Values["id"].ToString();
dsodeme_onkayitTableAdapters.odeme_onkayitTableAdapter _todeme = new dsodeme_onkayitTableAdapters.odeme_onkayitTableAdapter();
_todeme.DeleteQueryID(_id);
Response.Redirect("musteri_onkayit_odeme_al.aspx?username=" + lbUserName.Text);
}
}
está sendo invocado. O RowCommand
está em execução e excluir os registros.
Por favor, me ajudar a encontrar o problema. Eu uso o Vista Home Premium e IE8. É esse o problema?
Solução 2
Ok, eu corrigi-lo assim;
attribute.add ( "onclick", "if (confirm ( 'Tem certeza?')) Event.returnValue = false;!");
é obras. Obrigado.
Outras dicas
Em vez de:
((LinkButton)e.Row.Cells[12].Controls[0]).Attributes.Add("onClick",
"return false;"
);
Tente:
((LinkButton)e.Row.Cells[12].Controls[0]).OnClientClick = "return false;";
Eu acho Janeiro deve ser sobre a algo, é possível que o link real que você tenta adicionar o onClick não é 'célula 12 Controle 0'?
Você deve mostrar a saída e nós vamos ser capazes de descobrir o que está errado.
Eu sei que isto não pode soar como a resposta que você quer, mas se você sabe que o controle não deve permitir que uma eliminação por que não apenas torná-lo invisível ou seja, ocultar o controle.
No final, isso vai conseguir o que você está tentando fazer.