Newsgroup: it.comp.lang.javascript
Titolo: [?] textbox e selectedIndex

Non chiedetemi il perché...
Ho una textbox; vorrei che se scrivo (pseudocodice)
textbox.selectedIndex=0;
Mi esegua una azione (evidenzia la riga zero di una tabella).
Praticamente dovrei associare un setter...solo che mi serve nella intranet
con IE6.
Qualche idea?
Qualche strano comando di IE?
Vado a documentarmi sui behaviour (non so se c'entrano qualcosa ma mi
ispirano, mai studiati, magari....)
Se a qualcuno viene in mente qualcosa ringrazio.
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.

In data Thu, 30 Sep 2004 11:42:39 +0200, Cristiano Larghi ha scritto:
Immaginavo (ci ho provato, ho detto "non si sa mai"...)
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 
quel che mi viene in mente è appunto usare un watch sulla proprietà 
attributes
oppure appunto i behaviour.
oggi ci ho provato in pausa ma non ho avuto abb. tempo per finire
saluti

 oggi ci ho provato in pausa ma non ho avuto abb. tempo per finire
Per i behavior neanch'io ho avuto molto tempo di darci un occhio (speravo
qualcuno mi indirizzasse), per il watch...intendi un setTimeout per
controllare ogni tot se la proprietà è cambiata e scatenare una function?
Questa strada non è percorribile per le mie esigenze, purtroppo...
Se trovi qualcosa fammi sapere.
Per l'intanto grazie per l'interessamento.
p.s. ricorda: IE6 (con Mozilla & Co. si dovrebbe poter fare, se non ricordo
male, ma a me non interessa perché la intranet è IE-Only...)


 Questa strada non è percorribile per le mie esigenze, purtroppo...
no no no.
Object.watch
ti permette di settare appunto setter.
saluti.

 ti permette di settare appunto setter.
watch non esiste in IE ma cercando alternative ho trovato onpropertychange
che potrebbe fare al caso mio...
ci lavoro
grazie
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

 che potrebbe fare al caso mio...
Ma perche' tutto cio'? Volendo si potrebbe optare per una strada
alternativa, IE only.
Ricorda cmq che per la OOP ed il refactoring teoricamente le proprieta' di
un oggetto non dovrebbero mai essere esposte; i setter e i getter altro non
sono che metodi con prefisso "set" e "get" da chiamare per invocare la
proprieta' privata:
myObject.value (proprieta' privata / protetta)
myObject.getValue() (metodo pubblico)
myObject.setValue() (metodo pubblico)
-- 
ZER0://coder.gfxer.web-designer/
~ Plagiarism is copying from one source;
research is copying from two or more
(Wilson Mizner)

 alternativa, IE only.
Ok, allora spiego.
Sto facendo una combobox multicolonna (sfruttando biecamente la tua pagina
di scroll delle tabelle) in ambiente c#.
Il problema si pone lato client: volevo generare un qualcosa in cui far
funzionare le proprietà e metodi come se fosse una combobox (in realtà è
una textbox).
Quindi, per esempio, vorrei che assegnando selectedIndex=4; la tabella
(nascosta) si posizionasse sulla quarta riga e assegnasse il value
corrispondente.
Idem per altre proprietà e metodi (es. textbox.....text dovrebbe leggere la
prima colonna della tabella nascosta e restituire l'innerHTML, se scrivo a
mano il value cercarlo nella tabella etc etc).
Non ho ancora deciso quali proprietà, per ora volevo capire se era
fattibile (ambiente intranet, quindi IE6).
Te capì?


 Te capì?
Me capi', me capi'.. feci cose del genere qualche anno fa.
Per farlo puoi farlo, e anche banalmente. Basta che tu usi un behavior.
Essi servono esattamente per fare cio' che vuoi fare tu.
I behavior sarebbero anche interessanti, se non fossero gestiti un po' alla
pene di segugio: Applicando un behavior su una classe in uno stylesheet, mi
riscaricava ogni volta il file relativo quando incontrava un elemento di
tale classe: in pratica, se facevi un behavior per dei bottoni, e avevi 10
bottoni con quella classe in una pagina, te lo scaricava 10 volte.
Figo eh?
-- 
ZER0://coder.gfxer.web-designer/
~ Tutti quelli che credono nella psicocinesi, per favore alzino la mia
mano.

 Figo eh?
Sì...d'altronde da mamma microsoft...


 Sì...d'altronde da mamma microsoft...
Cmq se vuoi appena ho un attimo di tempo ti posto del codice sui behavior;
prima pero' devo terminare alcune query in SQL Server (nelle ultime
settimane ho dovuto normalizzare un intero database, adesso macino query
SQL come se piovesse, son diventato un mostro XD ) e poi ho una mail di una
fanciulla bisognosa d'aiuto, e cavalleria impone che vada a prestar
soccorso (quantomeno virtuale); anche se ci sono dei giorni (la maggior
parte) a cui darei volentieri fuoco a buona parte delle femmine umane del
pianeta (non me ne vogliano le lurkatrici - se ci sono - del NG ).
-- 
ZER0://coder.gfxer.web-designer/
~ La vita e' una tempesta, ma prenderla nel culo e' un lampo.
(B. Grillo)

 bottoni con quella classe in una pagina, te lo scaricava 10 volte.
dai... non li metteva in cache? hai verificato con uno sniffer le richieste?
saluti.

 pianeta (non me ne vogliano le lurkatrici - se ci sono - del NG ).
Per fortuna non sono ancora arrivato a questo stadio!


 dai... non li metteva in cache? 
Non e' solo una questione di cache, e' che ogni volta lui "richiedeva" tale
file (vedasi il conteggio degli elementi in basso sulla sinistra).
E questo, su un certo numero di elementi (10, 20) rallentava in modo
significativo il caricamento della web application.. eliminato dalla classe
il behavior, gli elementi da scaricare sono calati drasticamente, e
l'applicazione faceva le scie di fuoco per terra, da quant'era veloce al
confronto.
Da sottolineare, inoltre, che il behavior in questione non faceva
assolutamente nulla durante la fase di inizializzazione, aveva solo un paio
di funzioni legate a due eventi, e quindi il codice relativo partiva solo
"on demand".
-- 
ZER0://coder.gfxer.web-designer/
~ ..ma in effetti il concetto di WYSYWYG (quello che vedi e' quello che
ottieni) si applica ai computer malissimo, cosi' come si applica alle
donne... (The Real Programmer)

 Per fortuna non sono ancora arrivato a questo stadio!
Fin'ora non ho mai infierito su alcuna donna, ben inteso, eh..:D
-- 
ZER0://coder.gfxer.web-designer/
~ "Problemi" e' il nome che gli informatici danno a quelli che
comunemente verrebbero definiti "disastri"; altrimenti si chiamano
"features".

 ARGH.
Eh, su questo ci ho sbattuto anch'io: tabella con utenti b2b, tabella con
utenti b2c e tabella prospect, ognuna con qualche dato duplicato e con
campi completamente diversi tra loro...vogliamo continuare a martellarci
sui c0gl|0n|? :-/


 };
Una gran comodità inattesa: programmando con questa logica 
visualstudio.net
riconosce l'oggetto e fa funzionare l'intellisense!
-- 
"Affacciati affacciati benedici, guardaci
 guardaci...guardaci!
 Tanto sono quasi duemila anni che stai a guardare!"
									    E.B.

 riconosce l'oggetto e fa funzionare l'intellisense!
Beh, non e' che mi son svegliato un giorno e mi son detto "programmiamo
cosi'"; e' una metodologia abbastanza usata. :)
Secondo me si arriva ad un certo punto in cui si toccano (non si
raggiungono, ben inteso) i limiti di un certo linguaggio di programmazione. 
Arrivati a questo, quel che fa la differenza non e' cio' che sai fare, ma
"come" lo fai. Insomma, diventa piu' un discorso di approcci, metodi, e
"filosofie". In quest'ottica, passi dalla studiare la reference di un
linguaggio (che ormai sai bene) a cose come i Design Pattern (che ti
consiglio caldamente, quantomeno perche' ti possono fornire spunti
interessanti.. e' roba vecchia ma sempre attuale.. io mi sono reso conto
che applicavo dei DP dettati dalla mia esperienza personale,senza saperlo).
-- 
ZER0://coder.gfxer.web-designer/
~ Se potete leggere questo, la mia donna e' caduta.
(Letta sul retro di una maglietta di un motociclista)

 ...vogliamo continuare a martellarci sui c0gl|0n|? :-/
Che dirti.. non lo so. Forse siamo masochistici noi, perche' lavoriamo
ancora in questo settore.. fossimo stati piu' furbi saremmo andati a
coltivare alberi da frutto alle barbados.
-- 
ZER0://coder.gfxer.web-designer/
~ Un computer e' fondamentalmente stupido.
Non fa cio' che vuoi che faccia, ma cio' che gli dici di fare.
Solo, e' uno stupido dannatamente veloce.

 coltivare alberi da frutto alle barbados.
:-)
preferirei mungere le vacche in Trentino, se proprioproprio devo scegliere.
Qua il buon Catarsi sarà felice, come dice lui (non cito ma parafraso)
"questo newsgroup mi piace perché ogni tanto, con moderazione, compaiono
degli OT mostruosi"...eccolo!


 che applicavo dei DP dettati dalla mia esperienza personale,senza saperlo).
Ok, mi hai convinto...link per questi DP? (questa sigla mi chiama ricordi
d'infanzia un po' "particolari"...non so chi la capirą questa!)


 d'infanzia un po' "particolari"...non so chi la capirą questa!)
Io sono tra quelli che _non_ la capisce. :)
-- 
ZER0://coder.gfxer.web-designer/
~ Io non soffro di pazzia, ne godo ogni minuto.
(I don't suffer from insanity, I enjoy every minute of it)
on air ~ "YUKI - Home Sweet Home"

 Io sono tra quelli che _non_ la capisce. :)
Strano...DP forse non operava in modo continuo in tutta Italia ma fino a
Firenze arrivava...o forse no? Ricordi confusissimi...(era comunque un
movimento-partito di quand'ero pischello)


 };
Non posso però assegnare a una proprietà una function, anche se la function
è di un altro oggetto e restituisce un valore. Corretto?
Cioé:
Questa funziona (però devo chiamarla con oggetto.value())
 this.value=function() {return this.obj.getAttribute("ComboValue")}
Mentre questa no (chiamabile come proprietà), restituisce sempre null:
this.value=this.obj.getAttribute("ComboValue");
Mi sfugge il perché, però, visto che this.value="pippo"; funziona
perfettamente...
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.

 degli OT mostruosi"...eccolo!
Eheh.. non gli ho ancora neppure risposto a quel post, mi pare.. pero' e'
vero e concordo.. :)
-- 
ZER0://coder.gfxer.web-designer/
~ "When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)
on air ~ "raf in tutti i miei giorni"

 DP ho il libro.
Titolo?


 a lei.
[OT]
Ho scoperto giusto oggi che non vi è modo (almeno così sembra dalle mie
ricerche veloci), lato server, di inserire thead-tbody in una table...
Ho trovato delle soluzioni in rete proprio "carine" (eufemismo): creano la
tabella dove la prima tr è in realtà una thead e poi via javascript onload
la cambiano!
Senza parole...
[/OT]


 Titolo?
Design Pattern :)
-- 
ZER0://coder.gfxer.web-designer/
~ La vita e' una tempesta, ma prenderla nel culo e' un lampo.
(B. Grillo)
on air ~ "raf in tutti i miei giorni"

 Design Pattern :)
"Design Patterns"
(Se cerchi su google "Gang Of Four" o "GOF" dovresti trovare qualcosa)
-- 
ZER0://coder.gfxer.web-designer/
~ Il computer e' una macchina progettata per velocizzare e automatizzare
gli errori.


 Design Pattern :)
Come sei sintetico...mi sa che se lo cerco ne troverň un bel po'!
Qualche info in piů? Autore-casa?


 referenziato da obj.
Esatto, è proprio qua...non è possibile dire "questa proprietà è in realtà
quell'altra" e quindi quando te la chiedo restituisci l'altra. Per far
questo devo passare per forza da una function.
Uff


 (Se cerchi su google "Gang Of Four" o "GOF" dovresti trovare qualcosa)
Sì, lo ho trovato ma dice che è stato l'inizio di tutto...da lì se ne sono
sviluppati tantissimi di pattern per risolvere le varie problematiche.
E' un tema avvincente.
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 Qualche info in piů? Autore-casa?
Evvabbe', tu mi hai chiesto solo il titolo, io quello ti ho dato. :P
La casa editrice non la ricordo, dovrei vedere a casa, poi ti faccio
sapere.
-- 
ZER0://coder.gfxer.web-designer/
~ "Rispetto e' Memoria, non Oblio."


 questo devo passare per forza da una function.
Questi sono i getters ^__^;
Altrimenti a che servivano i vari "getValue()" e "setValue()", eh? :P
-- 
ZER0://coder.gfxer.web-designer/
~ Come devo regolare la stampante laser per stordire?
(How do I set a laser printer to stun?)


 E' un tema avvincente.
Moltissimo, soprattutto se non ti sei mai affacciato a queste tematiche.
-- 
ZER0://coder.gfxer.web-designer/
~ "L'unica persona che mi chiama con un numero che non conosco
e' il mio ragazzo." (Linda)


 [/OT]
premesso che non mi sono ancora messo a "spataccare" con il framework, 
ma solo un po' con c#...
Se ti riferisci a webcontrols, servercontrols, usercontrols et similaria 
non dovrebbe essere difficile riscriversene uno.
Anche senza la riscrittura (e forse trovi qualcosa di gia' pronto in 
rete) mi sembrerebbe comunque di ricordare che si riesce a fare qualcosa 
comunque.
Male che vada 
asp.net
 e' ottimo anche se usato a mo' di asp classico, 
ovvero senza webform e chilometrici viewstate...

 ovvero senza webform e chilometrici viewstate...
...e se la smettessi di scrivere mentre parlo al telefono e penso a 
qualche query otterrei risultati migliori nello spiegarmi, ed eviterei 
qualche orrida ripetizione. Comunque.

 qualche orrida ripetizione. Comunque.
:-)
No, è chiaro, solo che non ho tempo di riscrivere il controllo Table con
tutti i Children...già fatto per Form e tutti gli elements, per ora basta
così.
Forse basterebbe riscrivere solo il Controls.add (che accetta *solo*
TableRow...se accettasse anche un semplice HtmlGenericControl potrei
piazzare lì un bel thead, per esempio), sempre sia overridable, dovrei
studiarci.
Invece senza riscrivere non ho trovato alcun modo (proprio perché l'oggetto
Table accetta *solo* tr come Children).
Qua l'OT è ai massimi livelli, siamo direttamente passati ad un altro
linguaggio!


 linguaggio!
E' vero! Ora vi caccio a pedate fuori dal NG se continuate..! >______<
(lol :D )
-- 
ZER0://coder.gfxer.web-designer/
~ Un computer e' fondamentalmente stupido.
Non fa cio' che vuoi che faccia, ma cio' che gli dici di fare.
Solo, e' uno stupido dannatamente veloce.
on air ~ "Daniele Silvestri - Un giorno lontano"

 (lol :D )
:-)
Ok, me ne vado...buon fine settimana.


 Ok, me ne vado...buon fine settimana.
Buon fine settimana anche a te.. alla prossima :) 
-- 
ZER0://coder.gfxer.web-designer/
~ Deformazione professionale č:
Quando in ascensore senti la ragazza accanto che tira fuori il cellulare,
e ti volti per capire se e' un modello sul quale puoi sviluppare in J2ME.
on air ~ "suteki da ne"

 sapere.
Ti ricordi cosě acquisto?
Grazie


 Grazie
De nada, scusa il ritardo.
Se lo compri, tienimi aggiornato sulla tua lettura,okay? :)
-- 
ZER0://coder.gfxer.web-designer/
~ "Compiere l'impossibile e' impresa che risiede nel cuore degli uomini"
(Mariners and generals)
on air ~ "Madonna - Live To Tell"

In data Thu, 7 Oct 2004 19:49:08 +0200, ZER0 ha scritto:
Grazie, penso che sì, lo comprerò.


 Grazie, penso che sě, lo comprerň.
Di niente, figurati.
Noi abbiamo ancora in ballo una birra/cena, tra i miei impegni ed i tuoi
non si fa altro che rimandare.. vediamo di beccarci una di queste sere.
In caso mi posso portare dietro il libro se vuoi e ci butti un occhio.
Con il tuo widget come sta andando?
-- 
ZER0://coder.gfxer.web-designer/
~ Alcune persone sono ancora vive per il semplice motivo che e'
illegale ucciderle.

 Con il tuo widget come sta andando?
widget? "coso"? "aggeggio"? Che é?


 widget? "coso"? "aggeggio"? Che é?
E' quel che stai facendo.. il textbox con il selectIndex.. 
-- 
ZER0://coder.gfxer.web-designer/
~ You don't have to be crazy to be a webmaster. But it helps.

 E' quel che stai facendo.. il textbox con il selectIndex..
Aaaah
beh, ho fatto un qualcosina che mi serviva per una pagina ma è
assolutamente incompleto. Fa tutto lato server, lato client onclick sulla
tr setta il value alla textbox readOnly, e ho messo un bel getValue()....
Adesso mi servirebbe che onchange (che però non funziona sulle textbox
readOnly) esegua una function javascript, e mi servirebbe anche un qualcosa
per dirgli "esiste il value pippo?"...
Solo che devo trovare un altro paio d'ore.


 Solo che devo trovare un altro paio d'ore.
Io mi ci diverto come un matto quando mi metto a fare di queste cose;
spesso perdo di vista anche lo scopo che mi ero prefissato, e devo starci
attento. ;)
-- 
ZER0://coder.gfxer.web-designer/
~ Come devo regolare la stampante laser per stordire?


In data Fri, 8 Oct 2004 12:04:45 +0200, ZER0 ha scritto:
<ECCHISSENEFREGA>
Acquistato, attendo arrivo via posta.
</ECCHISSENEGREGA>


 Acquistato, attendo arrivo via posta.
Bene :) Ma mi raccomando, non sparire nella lettura.. son curioso di
sentire i tuoi commenti in proposito!
-- 
ZER0://coder.gfxer.web-designer/
~ Una mente perversa e' un peccato sprecarla.
(A dirty mind is a terrible thing to waste)
on air ~ "(2004.04.28) FLOW - OP4)"

 sentire i tuoi commenti in proposito!
Se hai tempo/voglia leggi la mia domanda in microsoft.public.it.dotnet.asp:
se ho ben capito questo libro dovrebbe aiutarmi a capire la logica corretta
da utilizzare, o quantomeno aiutarmi a capire come è stato concepito lo
strano oggetto di cui parlo...


In data Fri, 8 Oct 2004 17:32:18 +0200, Cristiano Larghi ha scritto:
Troppo forte dialog: non ci stava più questo thread sulla riga e
tranquillamente mi è andato a capo!
Posso immaginarmi cosa stia combinando OE con questo thread...


 Posso immaginarmi cosa stia combinando OE con questo thread...
Non ci tengo neppure a saperlo.. :)
-- 
ZER0://coder.gfxer.web-designer/
~ L'ingegnere non vive, funziona.
on air ~ "little by little - 磀讫莊莥莐汽讫汽荝"

 strano oggetto di cui parlo...
Puo' essere :)
-- 
ZER0://coder.gfxer.web-designer/
~ "The demo effect, you don't expect"
on air ~ "Hoobastank - The Reason"