Ir para conteúdo

POWERED BY:

Arquivado

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

Rocky669

Marcar os mesmo Checkbox de antes do Upload

Recommended Posts

Eu tenho uma pagina que envia recados para outras pessoas que estão no sistema, nesta tela eu tenho uma lista de todos os usuarios disponíveis, cada um com o seu checkbox e tenho um form de upload na mesma tela.

Meu problema é, a primeira coisa que o usuario faz é selecionar as pessoas que ele quer enviar o recado, ae quando ele faz o upload desmarca os checkbox! por que o upload faz um refresh na pagina pra enviar o arquivo.

Eu queria remarcar os mesmo checkbox q o usuario marcou antes do upload.

 

Lembrando q os checkbox não tem um nome pra cada um e sim GERAL por vir de um for chamando os dados de um banco de dados.

ficando um link assim (checkbox=1,checkbox=2,checkbox=3).

 

Minha tentativa foi esta.

 

--Função Javascript que verifica os checkbox antes do reload e monta um URL com os checkbox---

 


    function verificar( nome, quantidade ) 
	{   
        saida = "msg_novo.asp?Setores=<%=Setores%>&Pesquisa=<%=Pesquisa%>&";   
        for ( i = 0; i < quantidade; i++ ) 
		{   
            checkBox = document.getElementById( nome + ( i + 1 ) );   
            if ( checkBox.checked ) 
			{   
                saida += "Cod_Rem=" + checkBox.value + "&"; 
				quantidade = <%=USR_GOC.RecordCount%> - 1;
            }   
        }   
		if(quantidade == <%=USR_GOC.RecordCount%>)
		{
			if(document.frmSend.arquivo.value == "")
			{
				window.alert("Selecione o arquivo que voce deseja enviar!");
				return false;
			}
			else
			{
				document.frmSend.submit();
			}			
		}
		else
		{
			if(document.frmSend.arquivo.value == "")
			{
				window.alert("Selecione o arquivo que voce deseja enviar!");
				return false;
			}
			else
			{
				document.frmSend.action = saida;
				document.frmSend.submit();
			}			
		}
    }   

 

-- Função ASP que resgata os valores do URL gerado pela Função acima após o reload--

 

                                Dim texto, arrayTexto, i, varCheck
		texto = Cod_Rem
		arrayTexto = Split(texto,",")
		
		For i = 0 to Ubound(arrayTexto)
		varCheck = "document.form1.elements[i].type == "&arrayTexto(i)&"||"
		Next

-- Função que checa novamente os checkbox selecionados--

 


function ChecarNov()
	{	
		for (i=0;i<<%=Ubound(arrayTexto)%>;i++)
		{
			if(document.form1.elements[i].type == "checkbox")
			{
				if(<%=varCheck%>)
				{
					document.form1.elements[i].checked=1
				}
			}
		}
	}

Problemas que não consegui resolver!, a variavel varCheck só retorna o ultimo item do Array, não sei como concatenar isso, no PHP eu sei que eu faria

$varCheck .= "document.form1.elements.type == ", e ele me traria tudo.

Segundo Problema, por mais que me traga todos e substitua no na função que remarca, vai sobrar no final || .

 

Bom Espero Ajuda. Muito Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala ai,

 

bem voce pode fazer isso em asp mesmo, de forma simples os valores que voce enviar do checkbox, voce recebe um uma variável e compara com o instr()

se voce estiver enviando para outra pagina voce cria uma sessão com esse valores.

 

valor = Request.Form("campo")

session("campoSelec") = valor

 

e na pagina onde tem os nomes voce verifica em casa checkbox se o conteudo da sessão é igual aquele registro , se for voce marca o checkbox.

 

tipo

 

<input type='checkbox' name ='chk' value = 'meuvalor' <% if instr(Session("campoSelec"),"meuvalor") > 0 then response.write("checked") end if %> />

 

ficaria +/- assim

 

forma simples disso é colocar o checkbox com o mesmo nome.

 

 

qualquer duvida fala ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode colocar numa session e depois recuperar o valor...

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz um loop nele e joga na session

 

qtd_Checkbox = split(Request.Form("qtd_Checkbox"),",")
if qtd_Checkbox = ""
Checkbox = Split(Request.Form("Checkbox"), ",")

For i = 1 To Request.Form("Checkbox").Count

Response.write request.form("Checkbox")(i)&"<BR>" & request.form("qtd_Checkbox")(i)&"<BR>"

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.