Newsgroup: it.comp.lang.javascript
Titolo: errore previsto oggetto

Ciao,
non so se sono OT (già mi hanno cazziato in un'altro ng...), ma qualcuno
conosce il metodo per disabilitare la notifica del seguente errore (su
svariate pagine in IExplorer x.x)?
X Errore durante l'esecuzione
Eseguire il debug?
 Riga: ###
Errore: Previsto oggetto
Ho letto decine di post con le più bizzarre soluzioni (sempre
infruttifere...); in particolare c'è chi suggerisce di "disattivare il debug
degli script", ma non è certo la soluzione.
Mi viene da pensare che si possa ottenere qualcosa solo intervenendo su
qualche chiave di registro, ma non so assolutamente dove mettere le mani.
grazie a tutti
alf


???
Mi hai confuso.
Ti da fastidio perche' capita mentre navighi?
Disattiva il debug degli script, manda una mail a chi ha fatto il sito e
faglielo notare.
Capita su un sito che hai fatto tu?
Correggi il codice.
L'unico altro caso che mi viene in mente e' che hai uno script esterno che
sei costretto a inserire nel tuo sito pena la morte.
In questo caso offendi chi ha scritto lo script e nel frattempo aggiungi
come prima istruzione in un tag script: window.onerror=function(){return
true}
Mi fai sapere quale era il caso?

 Errore: Previsto oggetto
In JavaScript puoi utilizzare la rilevazione degli oggetti (object 
detection). Per esempio puoi fare:
if (document.form1)
   document.form1.input1.value = "xy";
Con codice prima controlli che esista l'oggetto document.form1 . Se 
esiste il form1 allora vado a impostare la proprietà value del controllo 
input1.
Se invece facessi solo:
document.form1.input1.value = "xy";
e se non fossi sicuro che sia presente sempre il form potrei generare 
l'errore che hai segnalato tu.
In generale, se viene segnalato un errore "Errore: previsto oggetto" c'è 
stato un errore di programmazione. E' stato utilizzato un oggetto non 
definito.
Altro approccio, puoi fare:
try
{
   document.form1.input1.value = "xy";
}
catch (e)
{
   // qui gestione dell'eccezione e.
}
In questo caso, qualsiase eccezione venga generata, viene gestita dal 
programma tramite il codice all'interno della clausola catch. L'errore 
non viene riportato al browser che non lo segnala.
Devi fare attenzione che i browser che vuoi utilizzare supportino la 
gestione delle eccezioni tramite il costrutto try/catch. Il primo 
approccio (object detection) è sicuramente il più portabile.
Gaetano Bigliardi


Evidentemente mi sono spiegato male...
non sono uno sviluppatore e non conosco Java nč javascript.
L'errore effettivamente mi da fastidio mentre navigo, capita in svariati
siti e vorrei che non  venisse piů notificato.
Mi rendo conto che la pretesa č assurda, ma mi chiedevo se magari, in un NG
dove Javascript č il tema fondamentale, qualcuno di voi avesse trovato un
qualche artificio per farlo scomparire (attenzione: non correggerlo...solo
scomparire).
Ah, disattivando il debug degli script non cambia nulla.
Grazie ancora e scusate l'intrusione
ciao

 Ah, disattivando il debug degli script non cambia nulla.
Forse hai disattivato solo lo script debugger di IE, che in effetti da 
come te l'avevano detto poteva sembrare.
Cmq sia e' un'impostazione del browser, quindi dipende da che browser 
usi. Ad esempio, per default Mozilla e Netscape non ti fanno apparire 
alcun messaggio di errore.
IE si, ma e' possibile far si' che non venga piu' mostrato, facendo 
visualizzare solo un iconcina d'errore in basso a sinistra sulla status 
bar e una label che ti avverte che la pagina e' stata caricata, ma con 
qualche errore.
Su IE pero', ti dovrebbe anche apparire un check in cui ti viene detto 
se vuoi disabilitare o meno la notifica degli errori.. 
Se si trattasse di IE:
Vai sul menu' Tools > Internet Options > Advanced
Sezione "Browsing", spunta "Disable script debugger" e leva lo spunta 
invece a "Display a notification about every script error".
Se hai IE in lingua italiana:
Strumenti > Opzioni Internet > Avanzate
Sezione "Esplorazione",
spunta "disattiva debug degli script" e leva lo spunta a "Visualizza 
notifica di tutti gli errori di script".
-- 
C'ya,
ZER0
  :. job profile - coder.gfxer.webDesigner
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

Grazie 1000.
ciao
alf
