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

    [Jquery] clonare riga di tabella e resettarne i campi input

    Ciao, ho la necessita di clonare eventuali righe di una tabella, pulendone i campi input clonati.

    La struttura è un tr con classe "_contatti" che al suo interno ha una select di nome "utente_elemento_id[]" e un input text di nome "utente_elemento_valore[]"

    Ovviamente li ho nominati in questo modo in quanto ho necessità di lavorarci poi lato server come array con php.

    Ho scritto il seguente codice, ma negli alert mi dice "undefined" quando cerco di mettere in un alert il valore degli inpout dell'ultima riga, ovvero quella clonata

    codice:
    	
    $('.clonaContatti').live('click', function(){
         var $tr = $("#datiAnagrafica tr.rigaContatti:last");
         var $clone = $tr.clone(true);
         // aggiunge la riga alla tabella
         $tr.before($clone);
         // alert con i valori della select 'utente_elemento_id' e dell'input text 'utente_elemento_valore'
         alert("#"+$("#datiAnagrafica tr.rigaContatti:last select[name=utente_elemento_id[]]").val()+"#");
         alert("#"+$("#datiAnagrafica tr.rigaContatti:last input[name=utente_elemento_valore[]]").attr('value')+"#");
         // azzera i nuovi campi
         $("#datiAnagrafica tr.rigaContatti:last select[name=utente_elemento_id[]]").val(1);
         $("#datiAnagrafica tr.rigaContatti:last input[name=utente_elemento_valore[]]").attr('value', 'contattoNew');
         return false;
        });
    dove sbaglio???

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    prima di tutto premetti un doppio backslash ad ogni quadra del selettore

    ... select[name=utente_elemento_id\\[\\]]

    o prova anche con apici

    ... select[name='utente_elemento_id[]']

    ciao

  3. #3
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    ho provato .. ma nulla ... quando faccio l'alert con i valori dell'ultima riga con quella classe mi dice sempre undefined

    per caso devo scrivere tr.CLASSE:last find "qualcosa"?
    perchè ora che ci penso in effetti gli input/select sono dentro ai td di quella riga...

  4. #4
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    ho risolto in questo modo, casomai potesse servire ad altri:

    codice:
    	// clona riga contatti
    	$('.clonaContatti').live('click', function(){
            var $tr = $("#datiAnagrafica tr.rigaContatti:last");
         	var $clone = $tr.clone(true);
    	    $tr.after($clone);
    	    // azzera i nuovi campi
            $clone.find("select[name='utente_elemento_id[]']").val(0);
            $clone.find("input[name='utente_elemento_valore[]']").attr('value', '');
            $clone.find("input[name='utente_elemento_note[]']").attr('value', '');
    	    return false;
        });

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