Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    12

    autocomplete + creazione nome file

    Buongiorno a tutti, sono poco esperto di jquery e js.
    Ho cercato ma non riesco a venire a capo di un problema.

    DB Mysql - tabella con 3 campi:
    | id_for | cod_for | des_for |

    1 - creo un file json per un campo form autocomplete. Funziona.
    2 - seleziono il nome desiderato dopo ricerca con minimo 2 caratteri. Funziona.
    3 - popolo due campi testo con cod_for (F00093) e des_for (ABELLI ANTONIO). Funziona.
    4 - nello stesso momento in un terzo campo testo compongo il nome file che andrà caricato, secondo lo schema:
    aaaa_mm_id(autoincrease)_fornitore(cod_for).pdf - (2015_10_00011_F00093.pdf)

    Nel campo autocomplete con onChange="componi()" richiamo la funzione per creare il nome file,

    QUI ERRORE: il nome composto risulta: 2015_10_00011_ab.pdf (dove ab sono le due lettere digitate per selezionare il nome fornitore sul campo autocomplete, suppongo che il tag onChange non va, provo onSelect, on keyUp... ma nulla!
    Non riesco a capire.. sono bloccato... Mi potete aiutare? Grazie in anticipo.

    codice HTML:
    <script>
    jQuery(document).ready(function(){
        //"keyup" event handler to reset input fields  && '#project-cod_for'
        $( "#project" ).live('keyup', function(e){
            //Improved with keycode checking to prevent extra typing after select
            var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
            var keyCode = $.ui.keyCode;
            if(key != keyCode.ENTER && key != keyCode.LEFT && key != keyCode.RIGHT && key != keyCode.DOWN) {
                $('#project-des_for').val("");
            }
        });
    
        $( "#project" ).combogrid({
            debug:true,
            colModel: [{'columnName':'name','label':'Fornitore'}],
            url: 'server.php',
            //"select item" event handler to set input fields
            select: function( event, ui ) {
                $( "#project" ).val( ui.item.name );
                $( "#project-des_for" ).val( ui.item.name );
                $( "#project-cod_for" ).val( ui.item.author );
                
                return false;
            }
        });
    });
    </script>
    <script type="text/javascript">
                function componi()
                {
                    var myTesto=document.getElementById("name");
                    var mycodice=document.getElementById("project");
                    var valorecodice=mycodice.value;
                    var myidp=document.getElementById("idp");
                    var valoreidp=myidp.value;
                    var today=new Date();
                    year=today.getYear();
               
                   if(year<1900)year=year+1900;
                   if(valorecodice!=""&valoreidp!="")
                    {
                    //myTesto.value=year+"_"+(today.getMonth()+1)+"_"+valoreidp+"_"+valorecodice;
                    myTesto.value=year+"_"+('0' + (today.getMonth() + 1)).slice(-2)+"_"+valoreidp+"_"+valorecodice;
                    }           
                }
            </script>
    <form bla bla>
    <input size="16" type="text" name="cod_for" id="project-cod_for" class="stile1" readonly="readonly"/> (campo testo con codice fornitore F00093)
    <input size="50" name="des_for" id="project-des_for" class="stile1" readonly="readonly"/> (campo testo con descrizione fornitore ABELLI ANTONIO)
    <input  type="text" name="data_fatt" size="10" id="data_fatt" />
    <input name="num_fatt" type="text" class="stile1" id="num3" onfocus="document.getElementById('num').style.backgroundColor='#fff';  this.value=' '; return false;" size="15" /> (campo testo numero progressivo id autoincrement)
    <input type="text" id="name" name="name" size="50" class="stile1" readonly="readonly" /> (campo testo nome file pdf composto 2015_10_00011_ab.pdf)
    <input type="submit" name="Submit" value="Inserisci" class="pulsante" />
    </form>
    Spero di essere stato esaustivo, grazie ancora

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    12
    Buongiorno a tutti,
    nessun suggerimento?
    grazie

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    da quel che ho capito la chiamata alla funzione componi la puoi inserire direttamente nel metodo select:

    codice:
    select:function( event, ui ){
                $("#project").val( ui.item.name );
                $("#project-des_for").val( ui.item.name );
                $("#project-cod_for").val( ui.item.author );
                componi();
                return false;
            }
    
    inoltre credo sia sbagliata anche questa istruzione:

    var mycodice=document.getElementById("project");

    dovrebbe essere

    var
    mycodice=document.getElementById("project-cod_for");

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    12

    [RISOLTO] autocomplete + creazione nome file

    Grazie Vindav!
    In effetti inserendo componi() direttamente nel select funziona! Ho sbagliato completamente l'approccio, di conseguenza anche la variabile deve cambiare e io non potevo controllare non avendo a video la conferma.



Tag per questa discussione

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.