Newsgroup: it.comp.www.asp
Titolo: intercettare il numero del <td>

In una applicazione asp creo una table a più campi con i dati e
nell'ultimo campo metto una gif per aprire un collegamento.
Se seleziono la riga dai campi testo faccio diventare il colore del font
diverso dalle altre (per evidenziarla)e apro il documento
associato,mentre se clicco sulla gif apro ugualmente il documento ma non
si evidenzia la riga.
qui metto la gif:
<td bgcolor="#FFFFFF" style="color: #FFFFFF" align="center"
language=VBScript onclick='ChangeAll "<%Response.write
iddoc%>",<%Response.write idrec%>'>
<img border="0" src="img/nota2.gif" width="16" height="16"
alt=<%response.write fValues(i)%>>
e qui è dove chiamo ChangeAll:
Sub ChangeAll(idDoc,idrec)
    dim i
    dim u
    u = table1.rows.length 'quante righe ha la table
 
    for i = 1 to u -1 'setto tutte le righe con colore standard
	    table1.rows(i).style.Color = "#000000"
    next
'adesso cambio colore alla riga che seleziono, ma quest'evento non
viene intercettato se clicco sulla gif
    window.event.srcElement.parentElement.style.Color = "0000FF"
    for i = 1 to u -1 ' quindi non intercetto neanche l'idselI.value
	    if table1.rows(i).style.Color = "#0000ff" then
		    idselI.value = i
		    exit for
	    end if
    next
    iddocT.value = idrec
    ......
qualcuno sa come intercettare la linea su cui clicco e impostare il
colore della stessa ???
grazie Fabio
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 si evidenzia la riga.
[CUT]
onclick passa anche this (che corrisponde all'oggetto, nel nostro caso la
td):
ChangeAll(idDoc,idrec,sender) ....
Dall'oggetto per arrivare alla tr:
tuatr=sender.parentNode
Poi puoi colorarla:
tuatr.style.backgroundColor="red"
(compatibile con tutti i browser Gecko + IE>=5.0)
Sei consapevole che stai sviluppando lato client con vbscript, vero?
Lo sai che: a) funziona solo con IE b) Microsoft stessa lo ha abbandonato
da tempo per il lato client c) si spera lo rimuova completamente nelle
prossime versioni di IE  ?
Domanda invece al moderatore: il tag o.t. (che scrivo col punto altrimenti
non so se questo messaggio arriva) è (credo) standard usenet; per un
messaggio come questo mi sembra corretto anteporre l'o.t., solo che se lo
metto il messaggio viene cestinato (non so se automaticamente).
Mi sembra una pratica strana: se un messaggio è o.t. è bene farlo sapere,
magari come nel mio caso rispondendo brevemente, ma evidenziandolo nel
subject...
-- 
"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.
--

 
-- 


 giusto?
No...this č parola chiave lato client, non server...
onclick='ChangeAll(<%=iddoc%>,<%=idrec%>,this)'


 (compatibile con tutti i browser Gecko + IE>=5.0)


 onclick='ChangeAll(<%=iddoc%>,<%=idrec%>,this)'
-- 


 Necessario oggetto 'sender'.
Siamo moooolto o.t.
stai sbagliando qualcosa, vuol dire che quel this non lo hai scritto in
modo corretto e quindi non sta passando l'oggetto 
Prova un alert(sender==null); //se NON stai passando l'oggetto dovrebbe
restituirti true; se non restituisce true vedi cosa dice un alert(typeof
sender);
Il newsgroup corretto è it.comp.lang.javascript .
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.
--

ed infatti non ricevo errori, ma quando tento di utilizzare sender ...
language="VBscript" onclick=ChangeAll(<%=id1%>,<%=id2%>,this) ...
da errore anche onclick=(singoloapice)ChangeAll(...
quindi onclick=(nessun apice)ChangeAll(val1,val2,this)...

grazie ,
forse...e dico forse:
<td bgcolor="#FFFFFF" style="color: #FFFFFF" align="center"
language=VBScript onclick='ChangeAll(<%=idloc%>,<%=idrec%>,this)
.....?
magari fra parentesi visto che ChangeAll è una funzione, e i valori
glieli devi passare fra parentesi?
ChangeAll(Valore1,Valore2,Sender)
Correggetemi se sbaglio...
CIau :)

 ChangeAll(Valore1,Valore2,Sender)
Temo che vbscript accetti anche questa assurda sintassi (ovviamente se il
metodo chiamato dall'onclick si trova tra virgolette)...
Abitudine orrenda anche per vb6, se non ricordo male rimossa (Halleluia!)
da 
vb.net
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.
--