- 1
[Opened] [résolu] getJSON
Posted by jayjay on 09/17/2010 10:42
Bonjour,
Pour charger les données de ma liste 2 en fonction de la sélection de la liste 1, je veux utiliser json. Mais je plante!!! Apparemment j'utilise mal $.getJSON.
Mon code javascript
<code> <script type="text/javascript"> {literal} function handleChange() { $.getJSON('governance~loader:loadThemes', function (data) { alert('Hello');//Juste pour tester }); } function load() { var oElement = document.getElementById("jforms_governance_searchEngine_id_type_governance"); if( !window.addEventListener ) oElement.OnChange=function(){handleChange()} //compatibilité IE else oElement.addEventListener("change", handleChange, false); }
{/literal}
</script>{meta_html bodyattr array('onload'=>'load()')}
</code>Le code du contrôleur que j'appel via $.getJSON
class loaderCtrl extends jController { <code> protected $dbProfil = 'governance'; function loadThemes() { $daoTheme = jDao::get('theme~theme'); $condition = jDao::createConditions(); $condition->addCondition ('id_governance','=',$this->param('id_type_governance')); $themes = $daoTheme->findBy($condition); $rep = $this->getResponse('json'); $rep->data = $theme->fetchAll(); return $rep; }
}
</code>Noter que l'événement change est bien détecté
Quelqu'un peut-il m'éclairé ? Merci
[Opened] getJSON
Posted by Vincentv on 09/17/2010 13:57
$.getJSON('governance~loader:loadThemes', function (data)
{
alert('Hello');//Juste pour tester
});
Essai de passer une URL à getJSON à la place d'un sélecteur jelix, ca devrais mieux fonctionner ^^
[Opened] getJSON
Posted by catsoup on 09/17/2010 20:46
Salut, je crois pas que ce code fonctionne tres bien en effet :p
Puisque 'governance~loader:loadThemes' est un selecteur (d'action), qui doit être donné en paramètre, de la méthode jUrl en l'occurence, pour qu'il soit converti en url.
Donc il faut récupérer l'url, avec {jurl 'governance~loader:loadThemes'}
ou encore mieux {urljsstring 'governance~loader:loadThemes'}
: http://jelix.org/articles/fr/manuel-1.2/(..)
Ce qui donne:
<script type="text/javascript"> <code> var url = {urljsstring 'governance~loader:loadThemes'}; {literal} function handleChange(){ $.getJSON(url, function (data){ alert('Hello');//Juste pour tester }); }
{/literal}
</script> </code>[Opened] getJSON
Posted by foxmask on 09/17/2010 20:51
ou simplement comme ceci ;)
edit : ah catsoup plus rapide :) j'ai mis 10min a trouve dans la doc :D
@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !
[Opened] getJSON
Posted by jayjay on 09/18/2010 13:46
Merci,
mais j'ai tenté les solutions proposées sans succès. Franchement pas de piste...N'y a t'il rien a faire au niveau du contrôleur ??
[Opened] [Résolu] getJSON
Posted by jayjay on 09/18/2010 14:51
Trop vite mon constat!!! ça marche avec le urljsstring Merci
- 1