Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150

    Passaggio valori al submit

    Ciao a tutti,
    non so se il problema dipenda da Asp o da Javascript, ma eventualmente spostatemi nell'altra sezione.

    Faccio una premessa:
    Ho una form di ricerca che presenta questo semplice schema. (metto un solo campo di ricerca nume_avvi, ma ce ne sono di più.

    Codice PHP:
    <script language="javascript">
    function 
    checkCommit()
    {
         
    document.datiform.submit();
    }
    </script>
    <%
    strricenumeavvi = Request.QueryString("vc_numeavvi")
    %>

    <form name="datiform" action="<%= strURL %>" method="get">
    <td class="testolabel" width="18%">
    Numero:
    </td>
    <td class="testolabel" width="17%">
    <input name="vc_numeavvi"  class="campinull"   value="<%= strricenumeavvi%>" size="10" />
    </td>
    <input type="submit" value="Ricerca" onClick="javascript:checkCommit()" class="buttonoff" onMouseOver="this.className='buttonon'" />
    </form>

    <% If strricenumeavvi <> "" then

    ... Esegue la ricerca e restituisce il risultato

    end if
    %> 
    Ora il problema è questo.
    Devo aggiungere una lista valori multipla, che popola un campo "SELECT" secondo una estrazione particolare.

    Codice PHP:
    <tr>
    <
    td class=testolabel >
       
    Ente Appaltante:
    </
    td>
    <
    td colspan="3">
    <
    table cellspacing="0" cellpadding="0" border="0" width="100%">
    <
    tr>
       <
    td >
         <
    select NAME="CODI_ENTE_LIST" SIZE="5" class="campinull">
    </
    select>
    </
    td>
    <
    td >
    [
    url="javascript:LOV('xxxxxx.asp')"][img]xxxx/xxxxx.gif[/img]Lista[/url]

    </
    td>
    </
    tr>
    </
    table
    Il problema nasce qua.
    Devo formattare il valore presente in "CODI_ENTE_LIST" in un determinato modo e lo faccio in Javascript.
    Tale valore dovrò poi utilizzarlo nella select e quindi devo fare in modo tale che al submit venga passato.

    Ho pensato di inserire l'algorimo che mi formatta tale valore, direttamente nel checkCommit(), ma non so come passare la variabile così costruita, alla pagina stessa e quindi ala select.

    Questo è il codice finale della CheckCommit

    Codice PHP:
    function checkCommit()
    {
        var 
    iconc=0;
        var 
    vc_strlistenti="";
        var 
    strvirgola=",";


        var 
    strinzistri="UPPER(a.desc_deno_ente) like '%25"
        
    var strfinestri="%25' "
        
    var strfcondor=" OR "

        
    for (document.datiform.CODI_ENTE_LIST.options.length 1>= 0i--)
        {
            if (
    iconc!=0)
            {
                
    vc_strlistenti vc_strlistenti+strfcondor+strinzistri+document.datiform.CODI_ENTE_LIST.options[i].value+strfinestri
            
    }
            else
            {
                
    vc_strlistenti strinzistri+vc_strlistenti+document.datiform.CODI_ENTE_LIST.options[i].value+strfinestri
            
    }

            
    iconc=iconc+1
        
    }


        
    alert(vc_strlistenti)

         
    document.datiform.submit();

    L'Alert finale restituisce il valore corretto.

    Qualsiasi indicazione o suggerimento è ben accetto, visto che le sto provando tutte

    Grazie
    Ciao ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150

    Risolto (in parte...)

    Allora... ho trovato una soluzione, ma manca una parte e per questo credo dovrei essere spostato nella sezione javascript

    Spiego la modifca che ho fatto.

    1) ho aggiunto un campo nascosto, che utilizzerò per passarlo al momento del CheckCommit() e quindi poi nella select
    Codice PHP:
    <input type="hidden" maxlength="1000" name="LIST_ENTI" value="<%= strricecodiente%>" size="20"
    2) Ho aggiunto un on-change al campo <SELECT> in questo modo
    Codice PHP:
    <select NAME="CODI_ENTE_LIST" SIZE="5" class="campinull" onchange="javascript:formlistenti()">
    /
    select>
    </
    td>
    <
    td >
    [
    url="javascript:LOV('xxxx/xxxx.asp')"][img]xxxx/xxxx.gif[/img]Lista[/url]

    </
    td
    3) ho aggiunto la funzione formlistenti, che mi valorizza il campo LIST_ENTI
    Codice PHP:
    function formlistenti()
    {
        var 
    iconc=0;
        var 
    vc_strlistenti="";
        var 
    strvirgola=",";

        var 
    strinzistri="UPPER(a.desc_deno_ente) like '%"
        
    var strfinestri="%' "
        
    var strfcondor=" OR "

        
    for (document.datiform.CODI_ENTE_LIST.options.length 1>= 0i--)
        {
            if (
    iconc!=0)
            {
                
    vc_strlistenti vc_strlistenti+strfcondor+strinzistri+document.datiform.CODI_ENTE_LIST.options[i].value+strfinestri
            
    }
            else
            {
                
    vc_strlistenti strinzistri+vc_strlistenti+document.datiform.CODI_ENTE_LIST.options[i].value+strfinestri
            
    }

            
    iconc=iconc+1
        
    }

    //    alert(vc_strlistenti)

        
    document.datiform.LIST_ENTI.value=vc_strlistenti;

        return;

    Ora il problema è che l'on-change su CODI_ENTE_LIST si attiva solo se "clicco" sul campo, una volta che questo viene popolato dalla funzione e non quando viene invece effettivamente "riempito" dai dati...

    Come fare?

    x i moderatori
    Se il problema è risolvibile solo in JavaScript, mi spostate nell'altra sezione?

    Grazie
    Ciao

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 © 2026 vBulletin Solutions, Inc. All rights reserved.