Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    funzione che dà errore in Chrome

    Buongiorno a tutti!

    Nella mia pagina asp ho il seguente blocco di codice:

    codice:
    <input name="COMUNE" type="text" id="COMUNE" value="<%=Request.Form("comune_text")%>" readonly>
                                      [img]../../images/mano.gif[/img] </SPAN><input name="COMUNECD" type="hidden" id="COMUNECD">								  </TD>
    La funzione OpendDialog è la seguente:

    codice:
    function OpenDialog(ObjIDs,pagina,WinW,WinH,OldText,FieldToEmpty)
                 {
    
    //              if(FieldToEmpty)    SetEmptyFields(FieldToEmpty)
    
                    var NewValue = showModalDialog(pagina,OldText, "dialogHeight:"+WinH+"px; dialogWidth:"+WinW+"px; resizable: no; help: no; status: no; scroll: no;");
                    if(NewValue)
                        {
                        var ArrazyValue = NewValue.split("|");
                        var ArrayObjIDs = ObjIDs.split("|");
                        for(var i = 0; i < ArrayObjIDs.length; i++)
                            {
                            if(ArrayObjIDs[i] && ArrazyValue[i])
                                {
                                if(ArrazyValue[i] != "Null") 
                                {
                                document.getElementById(ArrayObjIDs[i]).value = ArrazyValue[i];
                                }
                                else
                                {
                                document.getElementById(ArrayObjIDs[i]).value = "";
                                }
                                }
                            }
                            //
                        }
                    }
    In IE va senza problemi, ma in Chrome non funziona e sulla riga
    codice:
    document.getElementById(ArrayObjIDs[i]).value = ArrazyValue[i];
    Mi dà l'errore: Uncaught TypeError: Cannot set property 'value' of null

    E' come se non prendesse il 3° campo che passo, perchè al trio 'AREA|COMUNECD|COMUNE', tolgo AREA e/o COMUNECD non c'è nessun errore, ma ovviamente nell'input box COMUNE c'è il valore sbagliato...
    Qualcuno mi sà aiutare?

  2. #2
    nessuno mi sa aiutare?

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Forse aiuta mettere una pagina demo online pubblica, per ricreare il problema ed eseguire test.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    ... scusa non so se ho capito bene ...
    intendi di metterti il link della pagina così che puoi vedere come funziona?

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    si

  6. #6
    la devo creare, perchè per accedere a quella pagina ci sono diversi controlli sui login ...

  7. #7
    allora il link è questo

    http://www.sirio8.it/riservato/insimm1_demo.asp

    la selezione della provincia funziona, è la selezione del comune che non funziona su Chrome (su IE va). Consente di effettuare la scelta, ma poi la stessa non viene inserita nell'apposita casella. Ho usato la console Javascript di Chrome che mi dà l'errore che vi segnalavo ...

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Dall'errore che ti da nella console mi pare di capire che l'oggetto

    - document.getElementById(ArrayObjIDs[i])

    non è definito/è null , quindi non puoi accedere alla sue proprietà...

  9. #9
    avevo capito il tipo di errore, ma non riesco a capire perchè si verifica visto che, come riportato nel codice io richiamo la funzione in questo modo:
    codice:
    <input name="COMUNE" type="text" id="COMUNE" value="<%=Request.Form("comune_text")%>" readonly>
    [img]../../images/mano.gif[/img] </SPAN><input name="COMUNECD" type="hidden" id="COMUNECD">								  </TD>
    quindi gli passo 3 valori e l'input con id "comune" c'è... Tanto più che il ciclo for è fatto proprio su ArrayObjIDs che è lo split del primo parametro:
    codice:
    function OpenDialog(ObjIDs,pagina,WinW,WinH,OldText,FieldToEmpty)
                 {
                    var NewValue = showModalDialog(pagina,OldText, "dialogHeight:"+WinH+"px; dialogWidth:"+WinW+"px; resizable: no; help: no; status: no; scroll: no;");
                    if(NewValue)
                        {
                        var ArrazyValue = NewValue.split("|");
                        var ArrayObjIDs = ObjIDs.split("|");
                        for(var i = 0; i < ArrayObjIDs.length; i++)
                            {
                            if(ArrayObjIDs[i] && ArrazyValue[i])
                                {
                                if(ArrazyValue[i] != "Null") 
                                {
                                document.getElementById(ArrayObjIDs[i]).value = ArrazyValue[i];
                                }
                                else
                                {
                                document.getElementById(ArrayObjIDs[i]).value = "";
                                }
                                }
                            }
                            //
                        }
                    }

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    quindi gli passo 3 valori e l'input con id "comune" c'è... Tanto più che il ciclo for è fatto proprio su ArrayObjIDs che è lo split del primo parametro:
    Non importa che il ciclo lo fai sulla stessa variabile che ti da errore... ti spiego qual'è molto probabilmente il problema... ti faccio un esempio:

    ArrayObjIDs contiene 3 elementi stringhe: AREA, COMUNE, CODICE

    codice:
    document.getElementById(ArrayObjIDs[i]).value = ArrazyValue[i];
    Quando esegui questo comando, javascript si aspetta che esistano 3 elementi html con id uguale rispettivamente a AREA, COMUNE, CODICE.

    codice:
    <input id="AREA">
    <input id="COMUNE">
    <input id="CODICE">
    Se uno di questi 3 elementi non esiste ti ritrovi l'errore "Uncaught TypeError: Cannot set property 'value' of null" perche non puoi settare il valore di un elemento che non esiste....

    Quindi per prima cosa verifica che a tutti gli elementi dell'array corrisponde un elemento html...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.