in alcune situazioni può capitare di dover aprire finestre figlie di quella padre, operazione che si può effettuare tramite javascript ricorrendo al semplice
window.open("http://www.miosito.tpl/finestra.html");e può anche essere necessario trasferire informazioni dalla finestra figlia a quella padre.
Anche in questo caso javascript ci viene in contro, infatti possiamo utilizzare la chiamata:
window.opener.nomeFunzione(parametro);per poter arrivare a trasferire l'informazione da una finestra all'altra; ovviamente nella finestra padre deve essere presente la funzione nomeFunzione e questa deve occuparsi di elaborare il parametro (o i prametri) in ingresso.
Può capitare di avere elementi della pagina che devono essere caricati in maniera asincorna, di consegunenza non sono disponibili al termine del primo caricamento della pagina, ultimamente sempre più spesso capita che questi elementi debbano a loro volta essere ancorati ad altri eventi javascript (binding).
Fintanto che il caricamento di questi secondi elementi viene svolto attraverso script scritti da noi è sufficiente mettere in coda al caricamento dell'elemento tramite $.getAjax() la funzione che si decide di ancorare agli elementi, ma cosa succede quando questo viene svolto in maniera "automatica" ricorrendo a script predefiniti (si, per capirci il caricamento tramite AHAH Form di Drupal)?
Come spesso capita si utilizzano select per andare a far effettuare delle scelte agli utenti, e come abbiamo visto precentemente è possibile usare le funzionalità ajax per fare in modo che delle select secondarie varino in funzione della prima scelta.
Cosa succede, invece, quando si hanno centinaia o migliaia di elementi tra cui scegliere? una select diventa una pessima scelta per l'utente che deve andare ad inserire i dati, ma fortunatamente Drupal ci mette a disposizione i campi autocompletanti, elementi che abbiamo già affrontato in articoli precedenti.
Vediamo ora come creare dei campi autocompletanti che hanno dipendenze tra di loro.
Ok, non proprio tutti ma buona parte di voi ha alzato la mano, questo perchè è sicuramente uno strumento potentissimo per la visualizzazione delle informazioni, quindi è fondamentale (o comunque molto utile) andare ad integrare i propri moduli con views, permettendo così la massima facilità di utilizzo successiva.
Vediamo ora come andare ad integrare delle tabelle del nostro modulo in modo che siano collegate a views.