Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1 2
dans ce cas il faut un declencheur pour la fonction, donc lancer la fonction en question sur le onChange du select (ca fonctionne bien comme du js standard ou alors j'ai rien compris )?
Hors ligne
$("#assureur_id").change(function(){....
signifie que ta fonction se déclenchera au changement d'option dans le select. Cependant, pour exécuter cette "surveillance" d'évènement, il faut suivre ce que je t'ai dis juste avant :
$(document).ready(....
Hors ligne
Oops je n'avais pas vu les lignes du bas...
quoique j'ai du louper un épisode, même
$(document).ready(function(){ alert('hello'); }
ne passe pas ... mes includes de fichiers se font bien comme ça non?
$this->view->headScript()->appendFile($this->view->baseUrl() .'/js/jquery.js');
$this->view->headScript()->appendFile($this->view->baseUrl() .'/js/updatecontratid.js');
Hors ligne
$(document).ready(function(){ alert('hello'); });
Il faut bien penser à refermer la parenthèse du ready.
Après... moi je mets directement dans la vue. Je n'avais pas compris que ton dernier problème était ça.
Hors ligne
C'est pour ca que moi, j'utilise plus souvent
$('#toto')->bind('change', ...
plutot que
$('#toto')->change(...
C'est plus.... "parlant"
Par contre, pour le 'ready', j'utilise la manière courte :
$(function() { alert('hello'); });
Mais chacun sa manière
Dernière modification par nORKy (19-09-2008 09:28:51)
Hors ligne
Oui, chacun sa manière, avant j'utilisais :
$(maFonction);
au lieu de :
$(document).ready(function(){ maFonction(); });
Mais j'avais des réactions bizarres quand il s'agissait de passer des paramètres à la fonction lors de son initialisation.
Hors ligne
neojick > pas vraiment un probleme, j'aurais juste voulu faire un truc dans les regles de l'art ... mais vu le resultat (ça ne fonctionne pas), je vais laisser dans la vue ...
oui chacun sa manière, rappelons juste que:
[mode proverbe] "la fin justifie les moyens" [/mode proverbe]
[mode codeur]tant que ça marche...[/mode codeur]
merci pour les tuyaux!
Hors ligne
Salut,
Pour chainer les select, j'utilise le plugin jquery.cascade : http://plugins.jquery.com/project/cascade
demo : http://dev.chayachronicles.com/jquery/c … index.html
++
Hors ligne
Je trouve le plugin intéressant.
J'ai juste une question (il ne faut pas m'en vouloir, je suis débutant sur AJAX) :
Comment lierce plugin avec mon application ZF pour récupérer les données du 2ème select d'une bd?
merci
Hors ligne
neojick a écrit:
Normal.
Tu dois mettre le tout dans une fonction
Exemple :Code:
function nomFonction(){ $("select#assureur_id").change(function(){ id = $("select#assureur_id").val(); $.ajax({ type: "POST", url: "/contrat/getcontratbyassureurid", data : "id=" + id, dataType: "json", success: function(response){ var obj = document.getElementById('contrat_id'); var optionData = response; //alert(response); //alert(optionData); obj.options.length = null; i=1; obj.options[0] = new Option('aucun', 0, false); for (key in response) { //alert('valeur:' + response[key]); //alert('cle:' + key + ' - valeur: ' + optionData[key]); obj.options[i] = new Option(optionData[key], key); i++; } } }); return false; }); } (document).ready(function(){ nomFonction(); }Ainsi, la fonction sera "activée" une fois le document chargé et attendra sagement l'évenement "change" sur l'élément indiqué.
L'exemple donné est bon et fonction presque bien chez moi. Le seul problème, c'est que mon data JSON à une dimension de plus :
{"identifier":"idToiles","items":[{"idToiles":"20","titreToiles":"SOUVENIR"}]}
Je ne suis pas un pro de la manipulation de json (1 semaine seulement)
Ce que je cherche donc a récupérer dans ce cas c'est le idToiles (20) comme valeur et titreToiles comme texte à afficher dans le select...
c'est dans la boucle for...in que sa se passe mais je ne sais pas comment faire, moi qui n'a aucun problème avec cela en php, je comprends bien la logique mais...js + json, vous me perder pour l'instant.
Quelqu'un a une idée ?
Hors ligne
Pages: 1 2