[Cascavel-pm] <OT> ajax básico + perl

Marco A P D'Andrade mdacwb em gmail.com
Sexta Agosto 1 10:20:32 PDT 2008


Acredito que já solucionado, mas em todo caso...

Quando vc acrescenta o conteúdo através de AJAX, vc deve ter o cuidado sobre
qual propriedade vc está indicando.

Não sei de suas necessidades, mas nas minhas poucas incursoes, eu sempre
tinha um elemento de interface que receberia a atualização, mesmo que
estivesse escondido, um teste simples, em JS mesmo é trocar o conteúdo de um
div ...


#-- js.html
<div id=troca>
Teste INICIAL
</div>

<script>
  ob = document.getElementById("troca");
  if ( ob != null ) {
    alert("Achei! Vou trocar");
     ob.innerHTML = "<b>bold</b> <i>italic</i>";
   } else {
    alert("Cade! ??  vou ter de usar o google ;)");
  }
</script>
#-- eof

Para utilizar AJAX é importante mais que conhecer os comandos, é conhecer os
elementos envolvidos:
   HTML
   JS
   Linguagem server-side
   HTML DOM (especialmente como procurar propriedades)

Uma excelente ferramenta para auxiliar é o FireBug, complemento do Firefox.
Sem ele eu jamais teria terminado um projeto que peguei a alguns meses...


Sds,
Marco Antonio

2008/8/1 Gabriel Vieira <gabriel.vieira em gmail.com>

> clearText(el); eu chutaria ai :D
>
> 2008/8/1  <fernandolouis em terra.com.br>:
> > Amigo, acredito que não seja um problema javascríptico... mas de qualquer
> > forma, se a função para análise:
> >
> > function replaceText(el, text) {
> >  if (el != null) {
> >   clearText(el);
> >   var newNode = document.createTextNode(text);
> >   el.appendChild(newNode);
> >  }
> > }
> >
> > agradeço a ajuda,
> > Fernando
> >
> > ----- Original Message ----- From: "Wendel Scardua"
> > <wendelscardua em gmail.com>
> > To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
> > Sent: Friday, August 01, 2008 10:24 AM
> > Subject: Re: [Cascavel-pm] ajax básico + perl
> >
> >
> > Meu palpite é que isso é erro do replaceText(), você não quer postar
> > essa função também ?
> >
> > (de preferência colocando um [offtopic] no subject, que o negócio tem
> > cara de ser problema javascríptico mesmo... )
> >
> > []s
> > Wendel
> >
> > 2008/8/1  <fernandolouis em terra.com.br>:
> >>
> >> lá vai...
> >>
> >> função AJAX:
> >>
> >>  function ajax() {
> >>   createRequest();
> >>   var url = "cgi-local/ajax.pl?paginaprincipal=1";
> >>   request.open("GET", url, true);
> >>   request.onreadystatechange = updatePage;
> >>   request.send(null);
> >>  }
> >>
> >>  function updatePage() {
> >>  if (request.readyState == 4) {
> >>    var retorno = request.responseText;
> >>    var idbloco_ajax = document.getElementById("bloco_ajax");
> >>    replaceText(idbloco_ajax, retorno);
> >>  }
> >>  }
> >>
> >> Valeu!
> >>
> >> ----- Original Message ----- From: "Gabriel Vieira"
> >> <gabriel.vieira em gmail.com>
> >> To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
> >> Sent: Friday, August 01, 2008 9:08 AM
> >> Subject: Re: [Cascavel-pm] ajax básico + perl
> >>
> >>
> >> E o conteúdo da função ajax?
> >>
> >> 2008/8/1  <fernandolouis em terra.com.br>:
> >>>
> >>> Amigos,
> >>> Eu já tinha indicado o Content-Type
> >>>
> >>> vejam:
> >>>
> >>> .HTML
> >>> <html>
> >>> <body onload="javascript:ajax();">
> >>> <div id="bloco_ajax"></div>
> >>> </body>
> >>>
> >>> .PL
> >>> #!/usr/bin/perl
> >>> print "Content-type:text/html\n\n";
> >>> print "texto em<b>negrito</b>";exit;
> >>>
> >>> E mesmo assim a tag volta escrita literalmente na tela e não é
> >>> renderizada
> >>> pelo browser.
> >>>
> >>> Não consigo entender o porquê.
> >>>
> >>> []s,
> >>> Fernando
> >>>
> >>> ----- Original Message -----
> >>> From: Fabricio Veiga
> >>> To: Cascavel Perl Mongers
> >>> Sent: Friday, August 01, 2008 12:14 AM
> >>> Subject: Re: [Cascavel-pm] ajax básico + perl
> >>> Achei: http://www.pageresource.com/cgirec/ptut4.htm
> >>>
> >>> #!/usr/bin/perl
> >>>
> >>> $retorno = "Content-type: text/html\n\n
> >>>                <br>Negritro<b>";
> >>>
> >>> print $retorno;
> >>>
> >>>
> >>>
> >>> T+
> >>>
> >>> 2008/8/1 Fabricio Veiga <fabriciostuff em gmail.com>
> >>>>
> >>>> Boa noite Fernando.
> >>>>
> >>>> Seu retorno do AJAX está sendo aloca em alguma DIV ou outro elemento
> >>>> html?
> >>>> Eu uso AJAX mas com PHP e o retorno vem com formato HTML. Um exemplo:
> >>>>
> >>>> HTML
> >>>> <html>
> >>>> <body onLoad="javascript:testeComAjax();">
> >>>> <div id="retornoAjax"></div>
> >>>> </body>
> >>>>
> >>>> no PHP..
> >>>>
> >>>> <?php
> >>>> echo "<b>Negrito</b>";
> >>>> ?>
> >>>>
> >>>> A função testeComAjax() chama o request GET do script em PHP,
> retornando
> >>>> o
> >>>> "<b>Negrito</b>".
> >>>> Acredito no seu script em Perl, ajax.pl, tenha que definir antes de
> dar
> >>>> o
> >>>> comando print, o type do conteúdo, aquele Content-type ... Eu não
> lembro
> >>>> agora como é o Content-Type para retornar com formato HTML. Dá uma
> >>>> pesquisa
> >>>> no Google... blz?
> >>>>
> >>>> Abraços..
> >>>>
> >>>> Fabrício Veiga.
> >>>>
> >>>>
> >>>> 2008/7/31 <fernandolouis em terra.com.br>
> >>>>>
> >>>>> Pessoal, sou iniciante em AJAX...
> >>>>>
> >>>>> Uma pergunta bem básica:
> >>>>>
> >>>>> Pq o AJAX retorna o texto sem formatação html?
> >>>>>
> >>>>> Por exemplo,
> >>>>>
> >>>>> tenho a minha pagina.html, que via ajax chama o ajax.pl
> >>>>>
> >>>>> então o ajax.pl retorna:
> >>>>>
> >>>>> print "texto em <b>negrinho</b>";
> >>>>>
> >>>>> só que o "negrinto" não retorna em negrito na página.html, pois as
> tags
> >>>>> não são processadas e retorna o texto inteiro: "texto em
> >>>>> <b>negrinho</b>"
> >>>>>
> >>>>> pq? como retornar o texto formatado?
> >>>>>
> >>>>> []s,
> >>>>> Fernando
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
>
>
>
> --
> Gabriel Vieira
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/cascavel-pm/attachments/20080801/65f18807/attachment.html>


Mais detalhes sobre a lista de discussão Cascavel-pm