Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833

    recuperare valore di un hidden?

    Ciao a tutti, mi ritrovo anche oggi a morire su cose che oramai dovrei sapere alla perfezione.

    Devo recupare e testare il valore di un campo hidden (caricato dal database) e testare
    che se e' uguale a M far uscire l'alert. Solo che non riesco a capire dove sbaglio, ho provato tutti i getElementById del mondo ma niente, quindi invece di andare a tentavi ve lo chiedo a voi.

    Il sorgente che ci interessa e' questo:

    <form id="modulo" name="modulo" method="POST">
    <input type="hidden" value="" name="temanu " />

    ...sql select from ......

    <input type="radio" id="user" name="user" value="<?php echo($contalink); ?>" />
    <input type="hidden" name="temanu_<?php echo($contalink);?>" value="<?php echo($TEMANU);?>" />
    <input type="hidden" id="temanu" name="temanu " value="<?php echo($TEMANU );?>"/>


    ....

    <input type="button" value="Calc Sol+Costi" onClick="javascript:calcolacosti()">

    Ora la funzione calcola costi deve oltre a testare che sia stata immessa almeno una scelte, verificare che il valore di TEMANU non sia diverso da *blanks e se lo e' (M) emettere l'alert
    preventivo in manutenzione.


    function calcolacosti()
    {
    scelte = new Array();
    var marca = document.modulo.user;
    for (var i=0;i<marca.length;i++) {
    if (marca[i].checked)
    scelte[scelte.length] = marca[i].value;
    }
    if (scelte.length < 1) {
    alert ('selezionare un preventivo');
    return false;
    }
    else {

    var inputField = document.modulo.getElementById('teanno');
    alert (inputField);

    }

    }


    Mi dite come fare??
    Ciao e grazie

  2. #2
    codice:
    var inputField = document.getElementById('temanu').value;
    inputField = inputField.trim(); // tolgo gli eventuali blank in testa e in coda
    if (inputField.length == 0) {
        alert ("Attenzione: inputField vale " + inputField);
        // fai dell'altro
    }
    sempre che sia giusta la riga che hai scritto:
    codice:
    <input type="hidden" id="temanu" name="temanu " value="<?php echo($TEMANU );?>"/>
    dove si nota che l'id del campo &egrave; temanu

    Ultima cosa:
    &Egrave; sbagliato dare il name di un campo con un blank finale:
    codice:
    <form id="modulo" name="modulo" method="POST">
    <input type="hidden" value="" name="temanu " />
    ed &egrave; ancora pi&ugrave; sbagliato dare un id ad un campo con lo stesso valore del name di un altro!
    (Il problema si pone con Internet Explorer, che ha uno scope unico che racchiude sia i names che gli id VVoVe: )
    Quindi non sono mica sicuro che IE ritorni l'oggetto giusto, dalla getElementById, quando c'&egrave; un altro oggetto che ha name uguale a quello che ha l'id che cerchi!

    Spero di essere stato abbastanza chiaro ...
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Grazie per la risposta, ho provato il tuo codice ma non riceve niente,
    forse sbaglio nel non mettere niente tra le parentesi della funzione calcolacosti!

    onClick="javascript:calcolacosti(qua devo mettere qualcosa?)"

    Ciao

  4. #4
    Originariamente inviato da guarnieri
    Grazie per la risposta, ho provato il tuo codice ma non riceve niente,
    forse sbaglio nel non mettere niente tra le parentesi della funzione calcolacosti!

    onClick="javascript:calcolacosti(qua devo mettere qualcosa?)"

    Ciao
    beh, se hai dichiarato la funzione calcolacosti() senza parametri, che parametro vuoi passare?
    poi .. vabb&egrave; nella fretta ho fatto una crepa: faccio apparire l'alert se il campo hidden &egrave; vuoto ...

    La tua calcolacosti come l'hai scritta tu e corretta in fondo:
    codice:
    function calcolacosti()
    {
        scelte = new Array();
        var marca = document.modulo.user;
        for (var i=0;i<marca.length;i++) {
            if (marca[i].checked)
               scelte[scelte.length] = marca[i].value;
        }
        if (scelte.length < 1) {
            alert ('selezionare un preventivo');
            return false;
        }
        else {
            var inputField = document.getElementById('temanu').value;
            inputField = inputField.trim(); // tolgo gli eventuali blank in testa e in coda
            if (inputField.length > 0) {
                alert ("Attenzione: inputField vale " + inputField);
                return false;
            }
        }
    }
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    ummm, ancora niente.

    ho messo l'alert incondizionato e non stampa mai nessun valore. non capisco perche' non la reperisca.

    function calcolacosti()
    {
    var inputField = document.getElementById('temanu').value;
    inputField = inputField.trim(); // tolgo gli eventuali blank in testa e in coda
    alert (inputField);
    }

    ....

    <form id="modulo" name="modulo" method="POST">
    <input type="hidden" id="temanu" value="" />

    .... SQL SELECT .....

    <input type="hidden" id="temanu" value="<?php echo($TEMANU);?>"/>

    ......

    <input type="button" value="Calc Sol+Costi" onClick="javascript:calcolacosti()">

    </form>

    Una domanda ma nel document.getElementById non ci andava anche il nome del form???

    Ciao e scusa

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Scusate l'uppetto, ma sono veramente bloccato.
    Ciao

  7. #7
    Ciao guarnieri,
    io mi sono trovata davanti al caso di passare tra pagine un valore..anch'io usato il document.getElementById ma non funzionava ma ho risolto così:

    variabile = document.nome_form.id_campo.value;

    Ciao
    ..per fortuna che non esiste solo internet explorer!

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Ciao guarnieri,
    io mi sono trovata davanti al caso di passare tra pagine un valore..anch'io usato il document.getElementById ma non funzionava ma ho risolto così:

    variabile = document.nome_form.id_campo.value;

    Ciao


    Sai che non ha funzionato neanche cosi', stampa undefined
    var inputField = document.modulo.temanu.value;
    alert (inputField);

    Non posso piu' vedere dei vecchi sorgenti dove avevo gestito questa funzione..

    In attesa di nuove, ciao a tutti

  9. #9
    Originariamente inviato da guarnieri
    ummm, ancora niente.

    ho messo l'alert incondizionato e non stampa mai nessun valore. non capisco perche' non la reperisca.

    function calcolacosti()
    {
    var inputField = document.getElementById('temanu').value;
    inputField = inputField.trim(); // tolgo gli eventuali blank in testa e in coda
    alert (inputField);
    }

    ....

    <form id="modulo" name="modulo" method="POST">
    <input type="hidden" id="temanu" value="" />

    .... SQL SELECT .....

    <input type="hidden" id="temanu" value="<?php echo($TEMANU);?>"/>

    ......

    <input type="button" value="Calc Sol+Costi" onClick="javascript:calcolacosti()">

    </form>

    Una domanda ma nel document.getElementById non ci andava anche il nome del form???

    Ciao e scusa
    Ma, scusa, non ti sei accorto che:
    [list=1][*]Hai creato DUE campi hidden con LO STESSO ID[*]Nessuno dei due campi ha un NAME[/list=1]
    devi creare UN SOLO campo hidden, il cui value lo valorizzi via php, che abbia un name (altrimenti come viene inviato, se non ha un name?) e che abbia un id univoco nel documento! (non ci pu&ograve; quindi essere un altro tag nel documento con lo stesso id)

    corretto questo, vedrai che il tutto funzioner&agrave;!
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Grazie ancora per la pazienza ho fatto come mi hai detto, un'unico campo (in realta' sono due ma viene stampato o uno o l'altro e comuque anche mettendo un solo campo non ricevo il suo valore) con un id unico ma non funziona, io posto tutta la pagina cosi' forse e' piu' facile vedere l'errore o il problema (Il campo che mi interessa testare e' TEMANU).
    Ciao



    Codice PHP:

    <script language="Javascript" type="text/javascript">
    [COLOR=orangered]function calcolacosti()
    {
    var inputField = document.getElementById('temanu').value;
    inputField = inputField.trim(); // tolgo gli eventuali blank in testa e in coda
    alert (inputField);
    }[/COLOR] </script> 

    </head>

    <body style="overflow:auto" bgcolor="#ebf2f8">

    <div style="width: 99%; height: 72%; border-size:2; overflow:auto; margin-left: 7px;
     border-width:thin; border-style:solid">
    [COLOR=orangered]<form id="modulo" name="modulo" method="POST">
    [/COLOR] 



    <?php
    $sql 
    " SELECT * FROM PW_DAT.PRTE200F where TECLIE like '%$teclieelenco%' and TERAGS like '%$teragselenco%' and TEANNO <= $teannoelenco and TENRPR <= $tenrprelenco 
    ORDER BY TEANNO DESC, TENRPR DESC FETCH FIRST "
    .$cursor." ROWS ONLY FOR READ ONLY OPTIMIZE FOR 200 ROWS"

    $stmt db2_exec($dbh$sql, array('cursor' => DB2_SCROLLABLE));
    while (
    $row db2_fetch_array($stmt)) 

    if (!
    $row=="") { 
        
    $TEMANU $row[5]; 
        
    $TEANNO $row[6]; 
    ......

    if (
    $contatore=='1'){?>
    <td height="10"  bgcolor="#CCCCCC" align="left" width="40">
    <input type="radio" id="user" name="user" value="<?php echo($contalink); ?>" />
    <input type="hidden" name="teanno_<?php echo($contalink);?>" value="<?php echo($TEANNO);?>" />
    <input type="hidden" name="tenrpr_<?php echo($contalink);?>" value="<?php echo($TENRPR);?>" />
    <input type="hidden" name="temanu_<?php echo($contalink);?>" value="<?php echo($TEMANU);?>" />
    <input type="hidden" name="temanu"  id="temanu"  value="<?php echo($TEMANU);?>"/>

    <td width="4%" bgcolor="#CCCCCC" valign="top"><font face="Arial" size="2">
    <a href="#"  onmouseover="ajax_showTooltip('ajaxtestatapreventivi.php?dati=<?php echo $dati?>',this);return false"  onmouseout="ajax_hideTooltip()">
    <?php echo "$TEANNO"?>
    </font>
    </a>
    </td> 
    <td width="5%"  bgcolor="#CCCCCC"> <font face="Times New Roman" size="2"><?php echo "$TENRPR"?></font></td> 
    <?php 

    if (
    $contatore=='2'){?>
    <td height="10"  bgcolor="#F7F7F7" align="left" width="40">
    <input type="radio" id="user" name="user" value="<?php echo($contalink); ?>" />
    <input type="hidden" name="teanno_<?php echo($contalink);?>" value="<?php echo($TEANNO);?>" />
    <input type="hidden" name="tenrpr_<?php echo($contalink);?>" value="<?php echo($TENRPR);?>" />
    <input type="hidden" name="temanu_<?php echo($contalink);?>" value="<?php echo($TEMANU);?>" />
    <input type="hidden" name="temanua" id="temanua"  value="<?php echo($TEMANU);?>"/>

    <td width="4%" bgcolor="#F7F7F7" valign="top"><font face="Arial" size="2">
    <a href="#"  onmouseover="ajax_showTooltip('ajaxtestatapreventivi.php?dati=<?php echo $dati?>',this);return false"  onmouseout="ajax_hideTooltip()">
    <?php echo "$TEANNO"?>
    </font>
    </a>
    </td> 
    <td width="5%"  bgcolor="#F7F7F7"> <font face="Times New Roman" size="2"><?php echo "$TENRPR"?></font></td> 

    <?php 
    if (
    $contatore=='1'){$contatore='2';}
    else{
    $contatore='1';}
    $contalink $contalink+1
    ?>
    </tr>
    <?php 
     
    } } ?>
    </table>

    </div>



    <div align="center" style="margin-left: 7px">
    [COLOR=orangered]
    <input type="button"  value="Calc Sol+Costi" onClick="javascript:calcolacosti()"> [/COLOR]  
    </div>

    </form>
    </body>
    </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.