Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581

    [JQuery] Clone riga funziona ma non ricevo i campi dal form

    ciao

    ho un modulo in una pagina dove avevo la necessità di clonare delle righe di una tabella per un'anagrafica, in pratica posso clonare la riga che conterrà cognome, nome, riferimenti telefonici e mail di un utente.

    Ho inserito lo script per il clone della riga e tutto funziona

    Il problema è che nella pagina di action del form mi recupera solo i valori della prima riga del form .. qualcuno saprebbe dirmi il motivo?

    Ecco il codice:
    pagina con il form:
    Codice PHP:
    <table id="tblScheda">
    <
    form name="scheda" method="post" action="richiesta_check.php">
    <
    tr>
    <
    th colspan="2">Riferimenti richiesta[img]add.png[/img]</th>
    </
    tr>
    <
    tr>
    <
    td>Riferimento [img]del.png[/img]</td>
    <
    td>
        
    Cognome <input type="text" name="cognome[]"> - Nome <input type="text" name="nome[]">

        <
    select name="richiesta_id_tel_1">
        <
    option value="0" selected></option>
        <
    option value="1">Casa</option>
        <
    option value="2">Uff.</option>
        <
    option value="3">Cell.</option>
        <
    option value="4">Altro</option>
        <
    option value="5">Fax</option>
        </
    select>
        
    Tel<input type="text" name="tel_1[]"> - <input type="password" name="rip_tel_1[]">

        <
    select name="richiesta_id_tel_2">
        <
    option value="0" selected></option><option value="1">Casa</option>
        <
    option value="2">Uff.</option>
        <
    option value="3">Cell.</option>
        <
    option value="4">Altro</option>
        <
    option value="5">Fax</option>
        </
    select>
        
    Tel2<input type="text" name="tel_2[]"> -<input type="password" name="rip_tel_2[]">

        <
    select name="richiesta_id_tel_3">
        <
    option value="0" selected></option>
        <
    option value="1">Casa</option>
        <
    option value="2">Uff.</option>
        <
    option value="3">Cell.</option>
        <
    option value="4">Altro</option>
        <
    option value="5">Fax</option></select>
        
    Tel<input type="text" name="tel_3[]"> - <input type="password" name="rip_tel_3[]"></td>
    </
    tr>
    </
    tr>
    </
    table>
    <
    table>
    <
    tr>
    <
    td><input type="hidden" id="q" name="q" value="1"><input type="submit" name="Submit" value="Invia"></td>
    </
    tr>
    </
    form>
    </
    table
    script jquery:
    Codice PHP:
    $(document).ready(function(){
        $(
    document).ready(function(){
            
            
    // -- Clone table rows
            
    $(".cloneTableRows").live('click', function(){

                
    // lastRow
                
    var lastRow = $('#tblScheda' " tr:last");
                
                
    // clone last row
                
    var newRow lastRow.clone(true);

                
    // append row to this table
                
    $('#tblScheda').append(newRow);
                
                
    // make the delete image visible
                
    $("#tblScheda tr:last td:first img").css("visibility""visible");
                
                
    // clear the inputs (Optional)
                
    $("#tblScheda tr:last td :input").val('');
                
                return 
    false;
            });
            
            
    // Delete a table row
            
    $("img.delRow").click(function(){
                $(
    this).parents("tr").remove();
                return 
    false;
            });
        
        });
    }); 
    Solo che se faccio un clone della prima riga e nella riga clonata inserisco i dati, nella pagina di action non mi considera quella parte di campi del form ... in PHP stampando $_POST mi trovo solo i campi della prima riga

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Conosco poco jquery lo stò studiando sicuro si corretta questa riga
    var lastRow = $('#tblScheda' + " tr:last");
    e che non vada cosi:
    var lastRow = $("#tblScheda tr:last");
    poi per verificare che vengano generate le righe usa firebug di firefox utilissimo e il recupero da php forech (o simile stò studiando pure php)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581

    nada...

    si scusa quella riga ho visto anche io che non era corretta

    Nel frattempo ho trovato anche relCopy per jquery e l'ho provato ... il problema è sempre lo stesso ... sembra che il browser non senta lo riempimento dei campi clonati che sono un array e da sempre un array di dimensione 1 il cui valore è uello del primo campo che viene clonato .. è assurdo

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    non è assurdo è corretto, il problema non è js e nemmeno php ma semplice formattazione dell'html

    codice:
    	<form name="scheda" method="get" action="#"> 
    	<table id="tblScheda"> 
    
    <tr> 
    <th colspan="2">Riferimenti richiesta[img]add.png[/img]</th> 
    </tr> 
    <tr> 
    <td>Riferimento [img]del.png[/img]</td> 
    <td> 
        Cognome <input type="text" name="cognome[]"> - Nome <input type="text" name="nome[]">
     
        <select name="richiesta_id_tel_1"> 
        <option value="0" selected></option> 
        <option value="1">Casa</option> 
        <option value="2">Uff.</option> 
        <option value="3">Cell.</option> 
        <option value="4">Altro</option> 
        <option value="5">Fax</option> 
        </select> 
        Tel. 1 <input type="text" name="tel_1[]"> - <input type="password" name="rip_tel_1[]">
     
        <select name="richiesta_id_tel_2"> 
        <option value="0" selected></option><option value="1">Casa</option> 
        <option value="2">Uff.</option> 
        <option value="3">Cell.</option> 
        <option value="4">Altro</option> 
        <option value="5">Fax</option> 
        </select> 
        Tel. 2<input type="text" name="tel_2[]"> -<input type="password" name="rip_tel_2[]">
     
        <select name="richiesta_id_tel_3"> 
        <option value="0" selected></option> 
        <option value="1">Casa</option> 
        <option value="2">Uff.</option> 
        <option value="3">Cell.</option> 
        <option value="4">Altro</option> 
        <option value="5">Fax</option></select> 
        Tel. 3 <input type="text" name="tel_3[]"> - <input type="password" name="rip_tel_3[]"></td> 
    </tr> 
    </table> 
    <table> 
    <tr> 
    <td><input type="hidden" id="q" name="q" value="1"><input type="submit" name="Submit" value="Invia"></td> 
    </tr> 
    </table>
    </form>

  5. #5
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    ancora più assurdo

    ho sempre messo i tag form apertura e chiusura dopo l'apertura della tabella e prima della chiusura per il problema che i form hanno sempre spazi sopra e sotto .. mai nessun problema

    in questo caso specifico invece fa la differenza... non si finisce mai di imparare

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.