Passar array asp para dentro do ajax
Galera, é o seguinte, eu não sei se seria o caso de abrir aqui na sessão de ajax, se não for movam pra asp.
Eu tenho uma instrução sql que traz uma lista de notícias e vídeos, eu estou montando um array com esses dados (id's apenas) e estou tentando passar esse array pra uma "tela de exibição" dentro do ajax, que carrega o título e o texto em html (com imagens e formatação). Teoricamente este conteúdo deverá permanecer por 20 segundos na tela e depois troca para o próximo, tipo um painel.
Eu tentei fazer com SetInterval, mais depois de alguns "refreshs" o script ficou meio louco, trocando de 1 em 1 segundo.
Segue o código em html, que eu tava fazendo teste da estrutura em si, pra depois quebrar a cabeça com o asp e sessions ...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="[http://www.w3.org/1999/xhtml">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JJA - Digital News</title>
<link href="css/css.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
function relogio(){
var thetime=new Date();
var hh=thetime.getHours();
var mm=thetime.getMinutes();
var ss=thetime.getSeconds();
var numday=thetime.getDay();
var nmonth=thetime.getMonth();
var ntoday=thetime.getDate();
var nyear=thetime.getYear();nmonth = nmonth + 1
if(ss >= 60){
ss = 00;
mm = mm +1;
if(mm >= 60){
mm = 00;
hh = hh + 1;
if(hh >= 24){
hh = 00;
}
}
}
ss = ss + 1;
if(hh <= 9){
xhh = "0" + hh;
}else{
xhh = hh;
}
if(mm <= 9){
xmm = "0" + mm;
}else{
xmm = mm;
}
if (ss <= 9){
xss = "0" + ss;
}else{
xss = ss;
}
if (ntoday <= 9){
ntoday = "0" + ntoday;
}else{
ntoday = ntoday;
}
if (nmonth <= 9){
nmonth = "0" + nmonth;
}else{
nmonth = nmonth;
}
document.getElementById("hora").innerHTML = xhh + ":" + xmm + ":" + xss;
document.getElementById("data").innerHTML = ntoday+"/"+nmonth+"/"+nyear;
lrelogio = setTimeout("relogio()",1000);
}
function preencheHtml(conteudo){
var divContent = document.getElementById("content");
if (conteudo == 1)
{
divContent.innerHTML = "<div id='titulo'>Ministra apoia isenção para prestadores de serviço gratuito</div><div id='texto'><p>A ministra do Desenvolvimento Social e Combate à Fome, Márcia Lopes, disse nesta segunda-feira que considera justo que empresas que prestam serviços gratuitos à comunidade tenham isenção de contribuições sociais. Estima-se que o governo deixe de arrecadar anualmente cerca de R$ 4 bilhões com impostos, como a parte patronal do Instituto Nacional do Seguro Social (INSS) na Receita Federal e a Contribuição para o Financiamento da Seguridade Social (Cofins).</p><p>"Com o decreto presidencial publicado quarta-feira no Diário Oficial da União, que regulamenta a Lei nº 12.101, está sendo retirada do Conselho Nacional de Assistência Social a responsabilidade de conceder os certificados para essas instituições, transferindo-a aos ministérios do Desenvolvimento Social e Combate à Fome, da Educação e da Saúde, conforme a atividade-fim", explicou a ministra em reunião com representantes do setor no Paraná.</p><p>Segundo a ministra, com o decreto será possível organizar melhor e dar ainda mais transparência aos processos de certificação. No caso de entidades que desenvolvem mais de uma das atividade (saúde, educação e assistência social) a certificação deve ser solicitada ao ministério onde desenvolvem a atividade principal.</p><p>De acordo com a ministra, no Paraná, são beneficiadas com o Bolsa Família 480 mil famílias, que correspondem a 87% da população apta a participar do programa. </p></div>";
window.setInterval('preencheHtml(2)', 20000);
}
else if (conteudo == 2)
{
divContent.innerHTML = "<div id='titulo'>Receita libera novo programa para IR com pendência</div><div id='texto'><p>A partir desta segunda-feira, grande parte dos contribuintes poderá consultar o extrato da declaração do Imposto de Renda Pessoa Física (IRPF) no site da Receita Federal e ver se foi aceita com pendências ou não. Para os casos com pendência ou para quem não entregou o ajuste no prazo, o órgão disponibilizou uma nova versão do programa responsável pelo envio das informações. Outro programa, o Receitanet, responsável pela transmissão dos dados, não foi alterado. Para baixar o novo programa, clique aqui.</p><p>Durante o fim de semana, quem não entregou a declaração ficou impossibilitado de fazê-lo porque o sistema foi tirado do ar até as 8 horas desta segunda para manutenção e por segurança. Apenas os outros serviços ficaram disponíveis. Quem não entregou no prazo está sujeito a multa, que varia de R$ 165,74 a 20% do imposto devido.</p><p>O número final de declarações do Imposto de Renda entregues neste ano só será conhecido em setembro, segundo estimativas da Receita Federal, já que as declarações em formulários de papel postadas nos Correios ainda precisam ser contabilizadas e transcritas pelos técnicos. Esses documentos representam menos de 1% do volume total de declarações entregues. O prazo para quem entregou pela internet terminou na última sexta-feira às 23h59 (horário de Brasília). </p></div>";
window.setInterval('preencheHtml(3)', 20000);
}
else
{
divContent.innerHTML = "<div id='titulo'>III - Workshop JJA - Em Busca da Excelência</div><div id='texto'><p><img src='images/imgWorkShop.jpg' name='imgContent' align='right' id='imgContent' />Para funcionários da JJA, workshop encerrado no último domingo tem 100% de aprovação </p><p>Em clima de muito otimismo e participação maciça dos funcionários, a JJA Assessoria Fisco e Contábil realizou o seu III - Workshop "Em Busca Da Excelência -- Porque excelência só é alcançada por aqueles que a buscam." </p><p>O evento teve como foco a excelência em modelos de gestão como fator decisivo no posicionamento das empresas no mercado. Para os participantes, o workshop foi altamente produtivo contribuindo para o crescimento da organização e dos seus colaboradores. </p><p>"A meta de excelência em modelos de gestão e planejamento, deve ser seguida obstinadamente pelas empresas de todas as partes e ramos de atividade, porque essas são as organizações que sobreviverão no futuro", afirma Nelson Marques, diretor da MayOrtiz."</p></div>";
window.setInterval('preencheHtml(1)', 20000);
}
}
</script>
</head>
<body onload="relogio();preencheHtml(1);">
<div id="main">
<div id="content">
<div id="titulo">III - Workshop JJA - Em Busca da Excelência</div>
<div id="texto">
<p><img src="images/imgWorkShop.jpg" name="imgContent" align="right" id="imgContent" />Para funcionários da JJA, workshop encerrado no último domingo tem 100% de aprovação </p>
<p>Em clima de muito otimismo e participação maciça dos funcionários, a JJA Assessoria Fisco e Contábil realizou o seu III - Workshop "Em Busca Da Excelência -- Porque excelência só é alcançada por aqueles que a buscam." </p>
<p>O evento teve como foco a excelência em modelos de gestão como fator decisivo no posicionamento das empresas no mercado. Para os participantes, o workshop foi altamente produtivo contribuindo para o crescimento da organização e dos seus colaboradores. </p>
<p>"A meta de excelência em modelos de gestão e planejamento, deve ser seguida obstinadamente pelas empresas de todas as partes e ramos de atividade, porque essas são as organizações que sobreviverão no futuro", afirma Nelson Marques, diretor da MayOrtiz."</p>
</div>
</div>
<div id="frames">
<div id="frame01"><img src="images/frame01.png" vspace="15" /></div>
<div id="frame02"><iframe width="320" height="173" id="logos" name="logos" allowtransparency="true" frameborder="0" scrolling="no" src="logos.html"></iframe></div>
<div id="frame03">
<div id="relogio">
<div id="hora"></div>
<div id="data"></div>
</div>
<div id="tempo"><iframe src='http://selos.climatempo.com.br/selos/MostraSelo.php?CODCIDADE=418,558&SKIN=verde' scrolling='no' frameborder='0' width=150 height='170' marginheight='0' marginwidth='0'></iframe></div>
</div>
</div>
</div>
</body>
</html>
a parte em asp seria mais ou menos isso:
<%
sqlSelect = "select id_noticia from noticias where status = 1"
dados = select_sql(sqlSelect,"","","","")
if isarray(dados) = true then
dim matNoticias(10)
redim matNoticias(ubound(dados)-1)
for i = 0 to ubound(dados) - 1
matNoticias(i) = dados(0,i)
next
%>
Depois de criado o array, eu carrego a primeira notícia na tela, aguardo os 20 segundos e passo para a outra. Não sei se seria com o SetInterval, sou novato em ajax, peguei um pouco da lógica mais ainda tenho dificuldade pra entender alguns princípios.
Eu faria isso sem problemas se fosse estático, no final de cada html eu colocaria uma função pra chamar o próximo, mas isso precisa ser dinâmico.
Alguém acha possível fazer assim ou é muita viagem minha?? hehehehe
[]s
Discussão (3)
Carregando comentários...