Newsgroup: it.comp.lang.javascript
Titolo: tutorial su JavaScript

Saluti.
Vorrei imparare JavaScript.
Il problema è che vorrei evitare di dover comprare un manuale di 1000
pagine.
Io ho giò tutto quello che mi serve: reference di EcmaScript e DOM.
Mi occorre un buon tutorial avanzato, perchè l'object model di
JavaScript mi sembra un pò particolare.
Altre risorse che mi farebbero comodo sono:
1) differenze tra le implementazioni di EcmaScript nei vari browser
2) differenze nell'implementazione di DOM, XHTTPRequest e simili nei
   vari browser
purtroppo su wikipedia EcmaScript non è presente in
http://en.wikipedia.org/wiki/Comparison_of_layout_engines
Un'ultima cosa: ci sono librerie generiche e portabili per JavaScript?
Io conosco solo MochiKit, ma mi servirebbe anche qualche libreria per
la gestione avanzata delle stringhe, funzioni criptografiche (md5, sha)
e così via.
Grazie  Manlio Perilllo

 e così via.
Mi sa che se hai intenzione di usare JS come un linguaggio general
purpose ti conviene lasciar perdere
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 
No, perchè fare questa pazzia? ;-).
Mi serve md5 per la possibilità di inviare in un form di login la
password "protetta".
Per la manipolazione di stringhe mi servirebbe qualcosa come le funzioni
 presenti in Python.
s.split() # che mangia tutti gli spazi (anche se in EcmaScript v3 viene
            accettata una regexp)
encode/decode generici # più che altro per rot13
Sono cose facili da scrivere, ma se ci fosse una libreria già pronta è
meglio.
Tra l'altro al momento sto cercando un framework per la validazione dei
form.
Io ho appena terminato di scriverne uno in Python, ispirato a XML Schema
e XForms:
        def constraint(obj):
            return obj.username != obj.password and obj.age * 2 == 48
        model = Model(constraint=constraint)
        model.bind(
            "username",
            BoundValue(type=String(minLength=5, maxLength=10)),
            Control("username")
            )
        model.bind(
            "password",
            BoundValue(type=String(minLenth=5, maxLength10)),
            Password("password")
            )
        model.bind(
            "age",
            BoundValue(type=Integer(minInclusive=18),
                       constraint=lambda n: n % 4 == 0),
            Control("age")
            )
        args = {
            "username": "username",
            "password": "password",
            "password.check": "password",
            "age": "24"
            }
        request = FakeRequest(args)
        values, errors, other = self.model.submit(request)
Credo sia una faticaccia scriverne una versione per JavaScript e non
vorrei usare Ajax.
Saluti e grazie  Manlio Perillo

 vorrei usare Ajax.
Beh tanto la validazione la devi fare anche server side...


 
Certo.
Lato client è solo una aggiunta però è più semplice generare
messaggi di errore in linea con il form;
alla meno peggio uso un alert!
Via server il modo più comodo è rimandare l'utente ad una nuova pagina
(il target del form) indicadogli cosa ha sbagliato e pregandolo di
ritornare alla pagina con il form.
Non so quanto sia accettabile una cosa del genere, però...
Saluti  Manlio Perillo

 ritornare alla pagina con il form.
Brrr no no, l'utente deve stare nella stessa pagina...


 
Ma la soluzione a due pagine mi sembra anche più accessibile.
Ed io, di solito, rimando comunque l'utente ad una nuova pagina in caso
di successo (dove ha la conferma che tutto è andato bene).
Saluti   Manlio Perillo