Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [onclick] 'necessario oggetto'

    ho un problema all'onclick in una check box mi compare quest'errore:
    'necessario ogetto' ecco il codice:

    nomeCheck = "chkOkC";
    nomeCampoMod = "ddlNote";
    nomeLblNote = "lblNote";
    var idCampoMod = obj.id.replace(nomeCheck, nomeCampoMod);
    var objCampoMod = document.getElementById(idCampoMod);

    var idLblMod = obj.id.replace(nomeCheck, nomeLblNote);
    var objLblMod = document.getElementById(idLblMod);
    if(obj.checked)
    {
    if(objLblMod != null) ----l'errore me lo da qua...----
    {
    objLblMod.innerText=objCampoMod.options[objCampoMod.selectedIndex].text;
    objCampoMod.style.display = "None";
    objLblMod.style.display = "";
    }
    }

  2. #2
    ATTENZIONE AGLI APICI DOPPI:

    var objCampoMod = document.getElementById("idCampoMod");

    è una stringa e va scritta fra apici.
    ciao
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  3. #3
    non e' una stringa ma una variabile!!!

  4. #4
    PARDON... non l'avevo vista.

    boh... prova così allora:

    if(objLblMod)
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  5. #5
    continua a dirmi necessario oggetto ecco come la richiamo:

    javascript:GestCheck(this,'E');

    e questo e' lo script completo:
    function GestCheck(obj, tipo)
    {
    //il tipo indica il tipo di campo sul quale devono avere effetto le modifiche:
    //E -> edit
    //N -> note
    var nomeCampoMod;
    var nomeCheck;
    var nomeLblNote;
    if (tipo == "E")
    {
    nomeCheck = "chkOkF";
    nomeCampoMod = "txtEdit";
    }
    if (tipo == "N")
    {
    nomeCheck = "chkOkC";
    nomeCampoMod = "ddlNote";
    nomeLblNote = "lblNote";
    }

    var idCampoMod = obj.id.replace(nomeCheck, nomeCampoMod);
    var objCampoMod = document.getElementById(idCampoMod);
    var idLblMod = obj.id.replace(nomeCheck, nomeLblNote);
    var objLblMod = document.getElementById(idLblMod);
    if(obj.checked)
    {

    if(objLblMod)
    {
    objLblMod.innerText=objCampoMod.options[objCampoMod.selectedIndex].text;
    objCampoMod.style.display = "None";
    objLblMod.style.display = "";
    }

    }
    }
    non vorrei che dato che l'oggetto che gli passo puo' essere anche nascosto non vorrei che non lo trovasse..idee??

  6. #6
    Un'idea ce l'avrei ma non so se sia quello il problema:

    var idCampoMod = obj.id.replace(nomeCheck, nomeCampoMod);
    var objCampoMod = document.getElementById(idCampoMod);
    var idLblMod = obj.id.replace(nomeCheck, nomeLblNote);
    var objLblMod = document.getElementById(idLblMod);

    vedi queste 4 righe?
    Tu in pratica vuoi cambiare nome all'ID dell'input e poi prenderlo con getElementById(NUOVONOME).
    Il problema è che
    var idCampoMod = obj.id.replace(nomeCheck, nomeCampoMod);
    così facendo non cambi nome all'ID... ma semplicemente metti nella variabile idCampoMod il testo sostituito... ma l'ID di obj rimane invariato...

    poi... magari non ho capito il funzionamento e vuoi fare tutt'altro.

    Poi... attenzione all'uso di onclick:

    onclick="GestCheck(this,'E');"

    E NON:

    onclick="javascript:GestCheck(this,'E');"

    OK?
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  7. #7
    ti ringrazio e ce lo fatta..grazie..ecco la soluzione:
    var idCampoMod = obj.id.replace(nomeCheck, nomeCampoMod);
    era qui il problema...
    var objCampoMod = document.getElementById(idCampoMod);
    if(objCampoMod != null)
    {
    var idLblMod = obj.id.replace(nomeCheck, nomeLblNote);
    var objLblMod = document.getElementById(idLblMod);
    }

    ora sistemo pure il fatto dell'onclick..grassie grassie...

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.