Scriptaculous problem

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • JacK

    Scriptaculous problem

    Does any peo^le can help me with this script? Event.observe seem to be off

    Thank's in advance


    HTML>
    <BODY>
    <script type="text/javascript">

    netscape.securi ty.PrivilegeMan ager.enablePriv ilege("Universa lBrowserRead");
    </script>
    <script type = "text/javascript" src="scriptacul ous/lib/prototype.js">
    </script>
    <script type = "test/javascript" src="scriptacul ous/src/scriptaculous.j s">
    </script>
    <H1>Recherche d'une ville us</H1>
    <P>Nom de la ville ou code<BR/>
    <input id="ville" type="text" />
    </P>
    <DIV id)"villes"</DIV>


    <script type="text/javascript">

    function updateVilles (element, valeur) {
    //on lance une requete qui interroge le web service
    var URL = 'http://xoap.weather.co m/search/search';
    URL +='?where='+val eur;
    var requete = new ActiveXObject(' Msxml2.XMLHTTP' );
    requete.open('G ET', URL, false);
    requete.send(nu ll);
    showResponse(re quete);
    }

    function showResponse(re q) {
    xmlData = new ActiveXObject(" Microsoft.XMLDO M");
    xmlData.loadXML (req.responseTe xt);

    var html= '';

    if xmlData.getElem entByTagName('e rr').length!=0) {
    var noeud=xmlData.g etElementByTagN ame('err')[0];
    html = noeud.firstChil d.data;
    }
    else {
    var villes= xmlData.getElem entByTagName('l oc');
    if ( villes.length !=0) {
    for (var i=0; i < villes.length; i++)
    html += villes[i].firstChild.dat a+'br/>';
    }
    else {
    html= 'Aucune ville trouvee !';
    }
    }
    $('villes').inn erHTML = html;

    }

    Event.observe(w indow, 'load', function() {
    new Form.Element.Ob server('ville', 0.5,updateVille s);
    });
    </SCRIPT>
    </BODY>
    </HTML>
  • Thomas 'PointedEars' Lahn

    #2
    Re: Scriptaculous problem

    JacK wrote:
    Does any peo^le can help me with this script? Event.observe seem to be off
    [...]
    <http://validator.w3.or g/>
    <http://jibbering.com/faq/>
    <http://www.catb.org/~esr/faqs/smart-questions.html>
    <http://groups.google.c om/groups?as_q=Pro totype.js+OR+Sc riptaculous+OR+ Script.aculo.us &as_ugroup=comp .lang.javascrip t&scoring=d&fil ter=0>


    PointedEars
    --
    Prototype.js was written by people who don't know javascript for people
    who don't know javascript. People who don't know javascript are not
    the best source of advice on designing systems that use javascript.
    -- Richard Cornford, cljs, <f806at$ail$1$8 300dec7@news.de mon.co.uk>

    Comment

    • SAM

      #3
      Re: Scriptaculous problem

      JacK a écrit :
      Does any peo^le can help me with this script? Event.observe seem to be off
      Quand on fait :
      <http://xoap.weather.co m/search/search?where=Pa ris>
      on a bien un xml (avec une note de licence) avec tous les Paris.
      Le search sur "Paris, France" donne encore 2 choix ...
      M'a pas l'air coton à dompter ce truc.
      <HTML>
      <BODY>
      <script type="text/javascript">
      netscape.securi ty.PrivilegeMan ager.enablePriv ilege("Universa lBrowserRead");
      C'est pour pouvoir faire du cross-domain ?
      </script>
      <script type = "text/javascript" src="scriptacul ous/lib/prototype.js">
      </script>
      <script type = "test/javascript" src="scriptacul ous/src/scriptaculous.j s">
      </script>
      <H1>Recherche d'une ville us</H1>
      <P>Nom de la ville ou code<BR/>
      <input id="ville" type="text" />
      </P>
      <DIV id)"villes"</DIV>
      Là je vois comme un problème ! typo ?
      You can't have 2 IDs with same name !

      I suppose you wanted to write :

      <DIV id="villes"></DIV>

      Ça n'aurait donc rien à voir avec "observe()"
      <script type="text/javascript">
      >
      function updateVilles (element, valeur) {
      (...)
      $('villes').inn erHTML = html;
      }
      >
      Event.observe(w indow, 'load', function() {
      new Form.Element.Ob server('ville', 0.5,updateVille s);
      });
      </SCRIPT>
      --
      sm

      Comment

      • JacK

        #4
        Re: Scriptaculous problem

        SAM a écrit :
        >netscape.secur ity.PrivilegeMa nager.enablePri vilege("Univers alBrowserRead") ;
        >
        C'est pour pouvoir faire du cross-domain ?
        C'est une solution de contournement pour réaliser une connexion vers un
        serveur tiers, ce qui est interdit en standard sous firefox.
        >
        ></script>
        ><script type = "text/javascript" src="scriptacul ous/lib/prototype.js">
        ></script>
        ><script type = "test/javascript"
        >src="scriptacu lous/src/scriptaculous.j s">
        ></script>
        ><H1>Recherch e d'une ville us</H1>
        ><P>Nom de la ville ou code<BR/>
        ><input id="ville" type="text" />
        ></P>
        ><DIV id)"villes"</DIV>
        >
        Là je vois comme un problème ! typo ?
        yeah thanks
        You can't have 2 IDs with same name !
        I don't understand.
        >
        I suppose you wanted to write :
        >
        <DIV id="villes"></DIV>
        C'est rectifié.
        >
        Ça n'aurait donc rien à voir avec "observe()"
        Mais je n'arrive pas à le faire fonctionner.

        merci

        Comment

        • SAM

          #5
          Re: Scriptaculous problem

          JacK a écrit :
          SAM a écrit :
          >></P>
          >><DIV id)"villes"</DIV>
          >>
          >Là je vois comme un problème ! typo ?
          yeah thanks
          >You can't have 2 IDs with same name !
          I don't understand.
          on ne peut donner un même nom à plus d'un ID
          (mais tu dois le savoir)
          ><DIV id="villes"></DIV>
          C'est rectifié.
          >>
          >Ça n'aurait donc rien à voir avec "observe()"
          Mais je n'arrive pas à le faire fonctionner.
          Alors ... comme je ne pratique pas ces biblis ...
          reste à piocher les liens donnés par OreillePointées (PointedEars)
          merci
          Ben ... j'espérais que c'était seulement ça.

          Autre chose, je ne vois pas à quoi sert 'element' dans :
          function updateVilles (element, valeur) { ...
          et je ne sais comment tu y passes la valeur ( value ?)

          J'essaierais :

          function updateVilles (element) {
          var valeur = element.getValu e();


          Le site esspécialisé n'est pas très disert pour Form.Element.Ob server
          <http://prototypejs.org/api/timedObserver/form-element-observer>

          Pour ton surveillant :

          Event.observe(w indow, 'load', function() {
          new Form.Element.Ob server('ville', 0.5,updateVille s);
          });

          là 'updateVilles' est la fontion de callback
          mais ... comment y sont passés les arguments ?
          (element et value)

          Event.observe(w indow, 'load', function() {
          new Form.Element.Ob server('ville', 0.5,
          function(){
          updateVilles('' ,$('villes').va lue);
          });
          });

          pit être ? si je me réfère à :
          <http://prototypejs.org/api/timedObserver>

          --
          sm

          Comment

          Working...