Codeflyer.Com


settembre 14, 2006

Aggiungere al volo codice Javascript

Archiviato in: Javascript — Davide Fiorello @ 7:32 pm

In ambito lavorativo, mi sono trovato a dover sviluppare un sistema AJAX based per la realizzazione automatica di wizard.
In breve, viene caricata una pagina contenitore che gestisce tramite operazioni asincrone il caricamento dei singoli step del wizard.
Le pagine HTML contenenti il layout vengono gestite in maniera molto semplice impostando la proprietà innerHTML di un dato DIV.

JavaScript:
  1. var nuovaPagina = funzioneCheCaricaIlLayout();
  2. var container = document.getElementById('containerId');
  3. container.innerHTML = nuovaPagina;

Le cose però si complicano nel momento in cui si vogliono caricare al volo anche degli script. Al fine, per esempio, di effettuare una validazione sui campi della form.

Il metodo usato per l'HTML non funziona.
Gli script vanno aggiunti in maniera differente.

(continua...)

agosto 29, 2006

Classi ed ereditarietà

Archiviato in: Javascript — Davide Fiorello @ 9:02 pm

La gestione delle classi in javascript è leggermente diversa da quella a cui siamo abituati negli altri linguaggi di programmazione. Javascript, NON è un linguaggio class-basedì bensì un linguaggio prototype-based.
I linguaggi prototype-based, a differenza di quelli class-based, non fanno distinzione fra classi e istanze.
Ciò comporta non pochi problemi nell'utilizzo e bisogna fare molta attenzione.

Definiamo una classe:

JavaScript:
  1. function Person() {
  2.    this.name = "";
  3.    this.age = 15;
  4. }
  5.  
  6. Person.prototype.setName = function(newName){
  7.   this.name = newName;
  8. }
  9.  
  10. Person.prototype.setAge = function(newAge){
  11.   this.age = newAge;
  12. }

Abbiamo definito una classe MyClass con due campi (name e age) e due metodi (setName e setAge)
(continua...)

generiert in 0.329 Sekunden. | Powered by WordPress