Bonjour,
soit
Ma question est pourquoi l'alert affiche néant!Code:
1
2
3
4
5
6
7
8
9
10function toto() { this.un = "tonton" ... // ...Inutile this.ajax = new Ajax.Request(url, { onSuccess:... }); alert(ajax.transport.responseText) }
Version imprimable
Bonjour,
soit
Ma question est pourquoi l'alert affiche néant!Code:
1
2
3
4
5
6
7
8
9
10function toto() { this.un = "tonton" ... // ...Inutile this.ajax = new Ajax.Request(url, { onSuccess:... }); alert(ajax.transport.responseText) }
Simplement parce que ton alert appartien au scope de ta fonction, et dans ce scope il n'y a aucune variable qui s'appelle ajax.
Merci l'ami je comprend mieux ce qu'est un scope c'est un bloc en faite? Mais quelle est la meilleure solution à mon problème alors?
Tu cherches à faire quoi au juste ?
Si c'est récupérer le responseText, alors c'est dans le onSuccess qu'il faut aller :
Code:
1
2
3
4
5
6
7 function toto() { this.un = "tonton" ... // ...Inutile this.ajax = new Ajax.Request(url, { onSuccess:alert(ajax.transport.responseText) }); }
Ok merci je met [Résolu]! :king:
Bonjour,
Soit
La réponse est malheureusement [Object Window]!:cry:Code:
1
2
3
4
5
6
7
8 <input type="select" id="sel1" onchange="changeSelect();"></input> <script type="text/javascript"> function changeSelect() { console.log("this: " + this); } </script>
Quel est la solution pour l'associer à l'objet Select en question, avec un bind prototype.js?
Code:
1
2
3
4
5
6
7 <input type="select" id="sel1" onchange="changeSelect(this);"></input> <script type="text/javascript"> function changeSelect(elt) { console.log("elt: " + elt); } </script>
Pas bete!
Mais pas trés beau enfin je m'en contenterai.
Pour le moment!:yaisse2:
D'où l'interet de mon bis.
Message à caractère inutile n'ayant d'interet que de s'arreter la ou il commencera a etre ennuyeux.
Soit un tableau de selects représenté par bTabeSib
Et bTabnSib le tableau des nextSiblings de l'element cliqué.
Pourquoi ça marche poaaa :bug:Code:
1
2
3
4
5
6
7
8
9
10
11
12bTabeSib = $(bElt).siblings(); bLastSib = bTabeSib.last(); bIndxSib = bTabeSib.size(); bTabeSib != null ? bTabnSib = $(bCurrent).nextSiblings() : bTabnSib = bTabeSib; bTabnSib.each( function(bItem) { console.log("Item retiré: " + bItem); bItem.remove(); console.log("Qué passa!");
nextSibling ... :roll:
jette un oiel dans la faq sur le problèmes d'interprétation des nodes selon les navigateurs ...
http://javascript.developpez.com/faq...M#DOMIEFirefox
Si prototype n'est plus compatible IE/FF à quoi sert-il?:aie:Citation:
jette un oiel dans la faq sur le problèmes d'interprétation des nodes selon les navigateurs ...
cette syntaxe m'echappe :
j'aurais ecrit :Code:
1
2 bTabeSib != null ? bTabnSib = $(bCurrent).nextSiblings() : bTabnSib = bTabeSib;
Code:bTabnSib=( bTabeSib !=null)? $(bCurrent).nextSiblings():bTabeSib;
C'est un moyen d'écrire l'opérateur ternaire, les deux marchent apparement.
Bien que ça ne résolve pas mon problème.
Il s'arrete aprés/avant le bItem.remove() et n'affiche donc pas le Qué passa!Code:
1
2
3
4
5 bTabnSib.each( function(bItem) { console.log("Item retiré: " + bItem); bItem.remove(); console.log("Qué passa!");
Pourtant bTabnSib contient bien des [object HTMLSelectElement],[object HTMLSelectElement]...
ben je sais pas teste le length de nextSiblings() de prototype ?? avec un alert ???
nextSiblings étant une collection, quand tu en retires un (remove()) dans le each, l'indexage devient problématique...
Bovino tu n'es pas n'importe quel gnou.
Je crois que je vais chercher dans cette direction:yaisse2: