Connecting Tech Pros Worldwide Help | Site Map

Scriptaculous problem

JacK
Guest
 
Posts: n/a
#1: Sep 9 '08
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.security.PrivilegeManager.enablePrivilege ("UniversalBrowserRead");
</script>
<script type = "text/javascript" src="scriptaculous/lib/prototype.js">
</script>
<script type = "test/javascript" src="scriptaculous/src/scriptaculous.js">
</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.com/search/search';
URL +='?where='+valeur;
var requete = new ActiveXObject('Msxml2.XMLHTTP');
requete.open('GET', URL, false);
requete.send(null);
showResponse(requete);
}

function showResponse(req) {
xmlData = new ActiveXObject("Microsoft.XMLDOM");
xmlData.loadXML(req.responseText);

var html= '';

if xmlData.getElementByTagName('err').length!=0){
var noeud=xmlData.getElementByTagName('err')[0];
html = noeud.firstChild.data;
}
else {
var villes= xmlData.getElementByTagName('loc');
if ( villes.length !=0) {
for (var i=0; i < villes.length; i++)
html += villes[i].firstChild.data+'br/>';
}
else {
html= 'Aucune ville trouvee !';
}
}
$('villes').innerHTML = html;

}

Event.observe(window, 'load', function() {
new Form.Element.Observer('ville',0.5,updateVilles);
});
</SCRIPT>
</BODY>
</HTML>
Thomas 'PointedEars' Lahn
Guest
 
Posts: n/a
#2: Sep 9 '08

re: Scriptaculous problem


JacK wrote:
Quote:
Does any peo^le can help me with this script? Event.observe seem to be off
[...]
<http://validator.w3.org/>
<http://jibbering.com/faq/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://groups.google.com/groups?as_q=Prototype.js+OR+Scriptaculous+OR+Scrip t.aculo.us&as_ugroup=comp.lang.javascript&scoring= d&filter=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$8300dec7@news.demon.co.uk>
SAM
Guest
 
Posts: n/a
#3: Sep 9 '08

re: Scriptaculous problem


JacK a écrit :
Quote:
Does any peo^le can help me with this script? Event.observe seem to be off
Quand on fait :
<http://xoap.weather.com/search/search?where=Paris>
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.
Quote:
<HTML>
<BODY>
<script type="text/javascript">
netscape.security.PrivilegeManager.enablePrivilege ("UniversalBrowserRead");
C'est pour pouvoir faire du cross-domain ?
Quote:
</script>
<script type = "text/javascript" src="scriptaculous/lib/prototype.js">
</script>
<script type = "test/javascript" src="scriptaculous/src/scriptaculous.js">
</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()"
Quote:
<script type="text/javascript">
>
function updateVilles (element, valeur) {
(...)
Quote:
$('villes').innerHTML = html;
}
>
Event.observe(window, 'load', function() {
new Form.Element.Observer('ville',0.5,updateVilles);
});
</SCRIPT>
--
sm
JacK
Guest
 
Posts: n/a
#4: Sep 9 '08

re: Scriptaculous problem


SAM a écrit :
Quote:
Quote:
>netscape.security.PrivilegeManager.enablePrivileg e("UniversalBrowserRead");
>
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.
Quote:
>
Quote:
></script>
><script type = "text/javascript" src="scriptaculous/lib/prototype.js">
></script>
><script type = "test/javascript"
>src="scriptaculous/src/scriptaculous.js">
></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 ?
yeah thanks
Quote:
You can't have 2 IDs with same name !
I don't understand.
Quote:
>
I suppose you wanted to write :
>
<DIV id="villes"></DIV>
C'est rectifié.
Quote:
>
Ça n'aurait donc rien à voir avec "observe()"
Mais je n'arrive pas à le faire fonctionner.

merci

SAM
Guest
 
Posts: n/a
#5: Sep 9 '08

re: Scriptaculous problem


JacK a écrit :
Quote:
SAM a écrit :
Quote:
Quote:
>></P>
>><DIV id)"villes"</DIV>
>>
>Là je vois comme un problème ! typo ?
yeah thanks
Quote:
>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)
Quote:
Quote:
><DIV id="villes"></DIV>
C'est rectifié.
Quote:
>>
>Ç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)
Quote:
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.getValue();


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

Pour ton surveillant :

Event.observe(window, 'load', function() {
new Form.Element.Observer('ville',0.5,updateVilles);
});

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

Event.observe(window, 'load', function() {
new Form.Element.Observer('ville',0.5,
function(){
updateVilles('',$('villes').value);
});
});

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

--
sm
Closed Thread


Similar JavaScript / Ajax / DHTML bytes