Ir para conteúdo

POWERED BY:

Arquivado

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

filipescoob

paginação em ajax mais asp pq naõ ta rolando /?????

Recommended Posts

Salve Galera...

 

Estou montando com o codigo de nossos amigos...

 

* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br

 

* Alterado por Micox - micoxjcg@yahoo.com.br

 

Um sisteminha de paginação mas não ta rolando passo os paramentros para o as mas não rola vou postar o codigo... abraços.

 

 

segue codigo ajax com chamadas da paginação

 

pagina micoxAjax.js

function ajaxGet(url,elemento_retorno,exibe_carregando){/****** * ajaxGet - Coloca o retorno de uma url em um elemento qualquer* Use a vontade mas coloque meu nome nos créditos. Dúvidas, me mande um email.* Versão: 1.2 - 20/04/2006* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br* Parametros:* url: string; elemento_retorno: object||string; exibe_carregando:boolean*  - Se elemento_retorno for um elemento html (inclusive inputs e selects),*	exibe o retorno no innerHTML / value / options do elemento*  - Se elemento_retorno for o nome de uma variavel*	(o nome da variável deve ser declarado por string, pois será feito um eval)*	a função irá atribuir o retorno à variável ao receber a url.*******/	var ajax1 = pegaAjax();	if(ajax1){		url = antiCacheRand(url)		ajax1.onreadystatechange = ajaxOnReady		ajax1.open("GET", url ,true);		//ajax1.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");//"application/x-www-form-urlencoded");		ajax1.setRequestHeader("Cache-Control", "no-cache");		ajax1.setRequestHeader("Pragma", "no-cache");		if(exibe_carregando){ put("Carregando ...")	}		ajax1.send(null)		return true;	}else{		return false;	}	function ajaxOnReady(){		if (ajax1.readyState==4){			if(ajax1.status == 200){				var texto=ajax1.responseText;				if(texto.indexOf(" ")<0) texto=texto.replace(/\+/g," ");				//texto=unescape(texto); //descomente esta linha se tiver usado o urlencode no php ou asp				put(texto);				extraiScript(texto);			}else{				if(exibe_carregando){put("Falha no carregamento. " + httpStatus(ajax1.status));}			}			ajax1 = null		}else if(exibe_carregando){//para mudar o status de cada carregando				put("Carregando ..." )		}	}	function put(valor){ //coloca o valor na variavel/elemento de retorno		if((typeof(elemento_retorno)).toLowerCase()=="string"){ //se for o nome da string			if(valor!="Falha no carregamento"){ 				eval(elemento_retorno + '= unescape("' + escape(valor) + '")')			}		}else if(elemento_retorno.tagName.toLowerCase()=="input"){			valor = escape(valor).replace(/\%0D\%0A/g,"")			elemento_retorno.value = unescape(valor);		}else if(elemento_retorno.tagName.toLowerCase()=="select"){					select_innerHTML(elemento_retorno,valor)		}else if(elemento_retorno.tagName){			elemento_retorno.innerHTML = valor;			//alert(elemento_retorno.innerHTML)		}		}	function pegaAjax(){ //instancia um novo xmlhttprequest		//baseado na getXMLHttpObj que possui muitas cópias na net e eu nao sei quem é o autor original		if(typeof(XMLHttpRequest)!='undefined'){return new XMLHttpRequest();}		var axO=['Microsoft.XMLHTTP','Msxml2.XMLHTTP','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0'];		for(var i=0;i<axO.length;i++){ try{ return new ActiveXObject(axO[i]);}catch(e){} }		return null;	}	function httpStatus(stat){ //retorna o texto do erro http		switch(stat){			case 0: return "Erro desconhecido de javascript";			case 400: return "400: Solicitação incompreensível"; break;			case 403: case 404: return "404: Não foi encontrada a URL solicitada"; break;			case 405: return "405: O servidor não suporta o método solicitado"; break;			case 500: return "500: Erro desconhecido de natureza do servidor"; break;			case 503: return "503: Capacidade máxima do servidor alcançada"; break;			default: return "Erro " + stat + ". Mais informações em [url=http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html";]http://www.w3.org/Protocols/rfc2616/rfc261...c10.html";[/url] break;		}	}	function antiCacheRand(aurl){		var dt = new Date();		if(aurl.indexOf("?")>=0){// já tem parametros			return aurl + "&" + encodeURI(Math.random() + "_" + dt.getTime());		}else{ return aurl + "?" + encodeURI(Math.random() + "_" + dt.getTime());}	}}function select_innerHTML(objeto,innerHTML){/****** * select_innerHTML - altera o innerHTML de um select independente se é FF ou IE* Corrige o problema de não ser possível usar o innerHTML no IE corretamente* Veja o problema em: [url=http://support.microsoft.com/default.aspx?scid=kb;en-us;276228]http://support.microsoft.com/default.aspx?...kb;en-us;276228[/url]* Use a vontade mas coloque meu nome nos créditos. Dúvidas, me mande um email.* Versão: 1.0 - 06/04/2006* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br* Parametros:* objeto(tipo object): o select a ser alterado* innerHTML(tipo string): o novo valor do innerHTML*******/	objeto.innerHTML = ""	var selTemp = document.createElement("micoxselect")	var opt;	selTemp.id="micoxselect1"	document.body.appendChild(selTemp)	selTemp = document.getElementById("micoxselect1")	selTemp.style.display="none"	if(innerHTML.toLowerCase().indexOf("<option")<0){//se não é option eu converto		innerHTML = "<option>" + innerHTML + "</option>"	}	innerHTML = innerHTML.replace(/<option/g,"<span").replace(/<\/option/g,"</span")	selTemp.innerHTML = innerHTML	for(var i=0;i<selTemp.childNodes.length;i++){		if(selTemp.childNodes[i].tagName){			opt = document.createElement("OPTION")			for(var j=0;j<selTemp.childNodes[i].attributes.length;j++){				opt.setAttributeNode(selTemp.childNodes[i].attributes[j].cloneNode(true))			}			opt.value = selTemp.childNodes[i].getAttribute("value")			opt.text = selTemp.childNodes[i].innerHTML			if(document.all){ //IEca				objeto.add(opt)			}else{				objeto.appendChild(opt)			}							}		}	document.body.removeChild(selTemp)	selTemp = null}function extraiScript(texto){//Maravilhosa função feita pelo SkyWalker.TO do imasters/forum//http://forum.imasters.com.br/index.php?showtopic=165277&	// inicializa o inicio ><	var ini = 0;	// loop enquanto achar um script	while (ini!=-1){		// procura uma tag de script		ini = texto.indexOf('<script', ini);		// se encontrar		if (ini >=0){			// define o inicio para depois do fechamento dessa tag			ini = texto.indexOf('>', ini) + 1;			// procura o final do script			var fim = texto.indexOf('</script>', ini);			// extrai apenas o script			codigo = texto.substring(ini,fim);			// executa o script			//eval(codigo);			/**********************			* Alterado por Micox - micoxjcg@yahoo.com.br			* Alterei pois com o eval não executava funções.			***********************/			novo = document.createElement("script")			novo.text = codigo;			document.body.appendChild(novo);		}	}}function pega(quem){ return document.getElementById(quem)}function teste(){	ajaxGet("http://localhost/cadastro_ajax/cad_edi_del.asp",document.getElementById("div1"),true)	ajaxGet("http://localhost/cadastro_ajax/cad.asp",document.getElementById("mainpic"),true)}function primeira(tporder, order,corder){if (corder == "" || corder == null) {corder = "id";}	ajaxGet("http://localhost/cadastro_ajax/cad_edi_del.asp?pagina=1&tporder="+tporder+"&order="+order+"&corder="+corder,document.getElementById("div1"),true)}function anterior(pagina, tporder, order, corder){if (corder == "" || corder == null) {corder = "id";}	ajaxGet("http://localhost/cadastro_ajax/cad_edi_del.asp?pagina="+pagina+"&tporder="+tporder+"&order="+order+"&corder="+corder,document.getElementById("div1"),true)}function proximo(pagina, tporder, order, corder){if (corder == "" || corder == null) {corder = "id";}	ajaxGet("http://localhost/cadastro_ajax/cad_edi_del.asp?pagina="+pagina+"&tporder="+tporder+"&order="+order+"&corder="+corder,document.getElementById("div1"),true)}function ultima(pagina, tporder, order, corder){if (corder == "" || corder == null) {corder = "id";}	ajaxGet("http://localhost/cadastro_ajax/cad.asp??pagina="+pagina+"&tporder="+tporder+"&order="+order+"&corder="+corder,document.getElementById("div1"),true)}

 

e aqui vai a paginação em asp

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%><!--#include file="func.asp"--><%'conexao do banco de dadoscorder = request.QueryString("corder")order = request.QueryString("order")tporder = request.QueryString("tporder")session("order") = ordersession("tporder") = tpordersession("corder") = corder		if  session("order") = "" then			session("order") = "cod_id"		end if		if  session("tporder") = "" then			session("tporder") = "asc"		end if'*******************			   COMEÇO DA PAGINAÇÃO	  *****************************************	pagina = Request.QueryString("pagina")	If pagina = null or pagina = "" Then	pagina = 1	End If	set rs_cad = Server.CreateObject("adodb.Recordset")	rs_cad.PageSize = 20	SQL_1 = "Select cod_id, nome, data_criacao FROM tbl_produto order by "&session("order") & " "& session("tporder")	set rs_cad = conexao.execute(SQL_1)	'rs_cad.PageSize = int(registros/rs_cad.recordcount)' define o tamanho da "página"	Sub Mostranum()		Response.write "Existem " & rs_cad.recordcount &" registros na tabela - Mostrando pagina "& pagina &" de "&rs_cad.PageCount	end sub		sub Paginar()		ultima = rs_cad.PageCount		'INÍCIO DOS LINKS DA PAGINAÇÃO.		links = 3		order=nome&tporder=desc&corder=nome_desc		if int(pagina) > 1 then		response.write "<button name='primeira' class='botao' onclick='primeira("&session("tporder")&","&session("order")&","&session("corder")&");'>   Primeira   </button>"		end if		if int(pagina) = 1 then		response.write "<a class='botaoinat'  style='width=70px;'>   Primeira   </a>"		end if		' Aqui é criado os links antes da página atual.		For i = (pagina - links) To (pagina - 1)		 If i > 0 Then		 response.write("<button name='primeira'  style='width=70px;' class='botao' onclick='anterior("&i&","&session("tporder")&","&session("order")&","&session("corder")&");'>"&i&"</button>")	 End If		Next		'Imprime o número da página atual		Response.Write "<b><a class='botaoinat'>"&pagina&"</a>"		' Aqui é criado os links após a página atual.		For i = (pagina + 1) To (pagina + links)		 If i > ultima Then Exit For 		 response.write("<button name='proxima' class='botao' onclick='proximo("&i&","&session("tporder")&","&session("order")&","&session("corder")&");'>"&i&"</button>")		Next		if int(pagina) < ultima then 		 response.write("<button name='ultima' class='botao'  style='width=70px;' onclick='ultima("&rs_cad.pagecount&","&session("tporder")&","&session("order")&","&session("corder")&");'>   Ultima   </button>")		end if		if int(pagina) = ultima then			Response.Write "<a class='botaoinat' style='width=70px;'>   Ultima   </a>"		end if	End sub'*******************			   COMEÇO DA PAGINAÇÃO	  *****************************************	%>

 

Gostaria de saber pq não roda da erro de sintex...

 

Se alguem puder ajudar estou no aguardo...

 

segue banco....

 

cod_id nome data_criacao

4 DVD Room 15/5/2006 13:37:17

5 DVD RW 15/5/2006 13:37:21

6 Floppy 15/5/2006 13:37:30

7 Combo 52X 15/5/2006 13:37:47

8 Mother Board 15/5/2006 13:38:01

9 Processador 2.6 Sempron 15/5/2006 13:38:11

10 HD 80 Gb 15/5/2006 13:38:21

11 HD 40 Gb 15/5/2006 13:38:28

12 Processador Celeron 2.2 15/5/2006 13:38:35

13 G-Force FX 5200 128Mb 15/5/2006 13:39:05

14 Disquete 16/5/2006 15:11:11

15 Celular 16/5/2006 15:14:02

16 Monitor 16/5/2006 15:14:08

17 CPU 16/5/2006 15:14:13

18 Gabinete 16/5/2006 15:14:16

19 Telefone Fixo 16/5/2006 15:14:20

20 Porta Lapis 16/5/2006 15:14:24

21 Placa de Som 16/5/2006 15:14:29

22 Placa de Rede 16/5/2006 15:14:34

23 Placa de Captura 16/5/2006 15:14:37

24 Placa de Modem 16/5/2006 15:14:43

 

Estou no aguardo VALEU...................

Compartilhar este post


Link para o post
Compartilhar em outros sites

da erro de sintex

Não entendi esse erro que voce falou.Faça o seguinte:1) Veja se o erro é do ajax (javascript) ou de ASP2) POste o erro corretamente (e inteiro) pra gente saber por onde começar.Falows...

Compartilhar este post


Link para o post
Compartilhar em outros sites

não mostra o erro... quando ele ja carrega a pagina com aquele botão de erro no canto inferior direito do navegador quando clica duas vezes nele ele mostra erro de sintex... não consegui identificar o erro... creio que é na hora de passar parametros para o java script... pois mando em asp e recebo em java script.... abraços....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah sim... Se o navegador informa o erro, então é erro de javascript.Imagino que voce esteja usando o Internet Explorer correto?Bom, mude agora para o firefox que ele te avisa EXATAMENTE onde está o erro.É um ótimo navegador, principalmente pra desenvolvedores de site.Ah e o erro que ele fala é erro de "sintaxe" provavelmente.Baixe o FF (Firefox) e depois abra sua página. Após isto vá em ferramentas>Console de javascript. O firefox irá informar exatamente onde está o erro na sua página.Daí voce copia e cola aqui pragente ver.FAlows...

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha como passo este parametro

 

response.write("<button name='proxima' class='botao' onclick='proximo("&i&","&session("tporder")&","&session("order")&","&session("corder")&");'>"&i&"</button>")

e recupero assim

 

function proximo(pagina, tporder, order, corder){if (corder == "" || corder == null) {corder = "id";}	ajaxGet("http://localhost/cadastro_ajax/cad_edi_del.asp?pagina="+pagina+"&tporder="+tporder+"&order="+order+"&corder="+corder,document.getElementById("div1"),true)}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Heehe. pois é... Seu erro é de javascript (e no asp também) e não de ajax.Seguinte: sua variável session("corder") deve tá vazia. dá um REsponse.write nela pra ver se ela tá com conteúdo. Provavelmente ela tá vazia.

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.