Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Larissa Pessoa

Click do botao esta chamando a pagina várias vezes

Recommended Posts

Olá Pessoal,

 

 

vejam só: tenho um web form com diversos textbox e um botão gerar, ao clicar no botão listo nos textbox varios valores. Até ai tudo bem.

Só que o que acontece é que toda vez q clico no botao, seja no gerar ou em algum outro botão outras paginas da mesma são abertas dai caso queira retornar ao menu principal tenho q clicar para retornar varias vezes ate passar por todas as paginas q foram abertas(da mesma) e chegar no menu principal. Ao fazer um break no evento click do butao gerar vejo q mesmo ao clicar no botao ele primeiro vai ate o Load da pagina para depois entrar no evento click.

Alguem poderia me ajudar...?

 

obrigada

Larissa Pessoa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Larissa,

 

Sempre que é chamado o evento onclick do .net ele faz um postback na pagina e com isso abre novamente o form.load() e depois o evento solicitado.

para que nao execute nada no form.load quando ao click do evento ou seja, apos um postback, coloque um IF no inicio do load e fechando no final.

 

protected void Page_Load(object sender, EventArgs e)
{
	if (!IsPostBack)
	{
.... seu codigo ;....
	}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você usa algo do tipo :

 

response.redirect

 

Isso que acontece dele ir primeiro no load da página é assim mesmo, é o ciclo de vida da página, é legal ter uma noção disso, pois isso dá muita dor de cabeça..

 

Dependendo do problema é interessante usar os eventos onDataBinding

 

Talvez esteja ocorrendo alguma coisa no evento load que esteja recarregando a página..

 

Se possível posta o código pois pode ser qualquer coisa que esteja fazendo esse cara recarregar varia vezes

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já tentei usar o IsPostBack no load e dá na mesma, se cliquei no botao uma vez, caso queira voltar ao menu principal tenho q retornar duas vezes pois duas paginas estão abertas.

No load faço uso de response.redirect sim para preencher os dados do cabeçalho. abaixo o codigo.

 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If Not Page.IsPostBack Then

f.Empresa = Request.QueryString("empr").ToString

f.CnpjEmpresa = Request.QueryString("cnpj").ToString

f.DataSet_Filiais = f.Seleciona_DataSet_Bco("SELECT * FROM tab_filiais WHERE cnpj='" _

+ f.CnpjEmpresa + "'", f.Empresa)

Label_empresa.Text = f.DataSet_Filiais.Tables(0).Rows(0).Item("razao") _

+ vbCrLf + f.CnpjEmpresa

 

End If

End Sub

 

Protected Sub But_gerar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles But_gerar.Click

 

Label262.Text = Session("test")

Text_rec_exp.Text = f.Retorna_Saldo_Conta("3.01.01.01.01.01.01",f.Retorna_Numero_Mes(DD_checklist_mes.Text), DD_checklist_ano.Text)

End Sub

 

 

 

Obrigada

Larissa Pessoa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bingo

 

É esse response.redirect que tá fazendo com que você precise clicar duas vezes, mais ou menos assim

 

 

você está na página 1

 

na página 1 clica no link pra página 2

 

na página 2 é feito o response.redirect para página 3

 

na página 3 a primeira página de retorno é a 2, mesmo você tendo interagido na 1 e não na 2

 

 

não vi no código o response.redirect no código mas a questão é essa.

 

agora você precisa tratar esse response redirect do carregamento do menu, mas isso assim só na imaginando não tenho uma solução, precisaria saber a aplicação e a necessidade desse redirecionamento

 

qq coisa é só postar e espero que tenha dado pra entender a questão do response.redirect

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel,

 

Muito obrigada pelas explicações...

Eu ja testei entrar na pagina que tem o botao e n clicar nele. Caso n clique so preciso voltar uma vez que ja retorno ao menu principal, caso clique no botão e como se ao clicar nele chama a tela outra vez dai se cliquei no botao uma vez tenho q retornar duas vezes, passar pela mesma tela duas vezes ate chegar ao menu, se clicar 2 vezes no botao tenho q voltar 3 vezes e assim vai.

 

 

O response.redirect esta em outro formulario onde tem os texts que recebem os valores da empresa e cnpj.

 

Larissa Pessoa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel,

 

Muito obrigada pelas explicações...

Eu ja testei entrar na pagina que tem o botao e n clicar nele. Caso n clique so preciso voltar uma vez que ja retorno ao menu principal, caso clique no botão e como se ao clicar nele chama a tela outra vez dai se cliquei no botao uma vez tenho q retornar duas vezes, passar pela mesma tela duas vezes ate chegar ao menu, se clicar 2 vezes no botao tenho q voltar 3 vezes e assim vai.

 

 

O response.redirect esta em outro formulario onde tem os texts que recebem os valores da empresa e cnpj.

 

Larissa Pessoa

 

Ok

 

você poderia ver a possibilidade desse outro form ser feito com frame, acho que daria pra fugir desse porblema do response.redirect

 

qq coisa é só postar

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.