Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [JQUERY] visualizzare elementi ripetuti ad ogni click

    Ciao a tutti, avrei bisogno di far visualizzare una stringa con elementi html che viene ripetuta tutte le volte che faccio click su un determinato elemento... ho usato sia le funzioni append, pendent ecc.. il problema però è che al click dell'elemento invio prima un post ad una pagina php che mi crea la stringa con gli elementi da visualizzare e poi appunto la visualizzo, ma così facendo mi sovrascrive la stringa precedente invece di accodarla... come posso fare??

    Qui ho la funzione che ho fatto:

    codice:
    $("#name").on("click", function()
    		{
    			if ($target.is("div"))
    			{
    				var name = $target.attr("id");
    			}
    			$("[*]Prepended item").appendTo("#formTable");
    			/*$("#formTable").css("display","block");
    			$("#formTable").html("attendere...");
    			var $target = $(event.target);
    			
    			$.post("select.php", {name:name}, function(data)
    			{
    				$("#formTable").prepend('<div>Ciao</div>');
    			});*/
    			//var name = $(this).text();
    			//var name = $(this).attr("id");
    		});
    Hutton

    "Una tela bianca, offre infinite possibilità."

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    209
    Devi memorizzare la stringa che vuoi si conservi tra una pagina e l'altra, potresti spedirla al select.php e memorizzarla in una sessione o nel database a seconda che ti sia sufficiente memorizzarla temporaneamente (sessione) o permanentemente (database).
    In ogni caso non è un problema che puoi risolvere solo con javascript.

  3. #3
    lo sospettavo...
    ti ringrazio!
    Hutton

    "Una tela bianca, offre infinite possibilità."

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    ma così facendo mi sovrascrive la stringa precedente invece di accodarla... come posso fare
    Accodarla nella pagina intendi? se si, puoi fare tutto in js, non vedo a che serve la sessione o db.
    Posta la parte html

  5. #5
    questo è l'html:
    codice:
    <div id="name">
    	<h1>Elenco dei prodotti</h1>
    <div>prodotto 1</div>
    <div>prodotto 2</div>
    </div>
    <form id="select_product" method="post" action="">
    	<fieldset>
    		<div id="formTable">
    
    </div>
    		<input type="submit" value="conferma">
    	</fieldset>
    </form>
    Hutton

    "Una tela bianca, offre infinite possibilità."

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    ma il post lo fai con ajax o con il submit?

    - lo fai con ajax , fai tutto con js
    - fai il submit, fai tutto con php


  7. #7
    Così funziona:

    codice:
    $("#name").on("click", function()
    		{
    			var $target = $(event.target);
    			
    			if ($target.is("div"))
    			{
    				var idTarget = $target.attr("id");
    				var name = $target.text();
    				var input = "<input id='input'"+idTarget+" name='input'"+idTarget+" type='text' size='5'>";
    				var btnSave = 'Salva';
    			}
    			$("<div>"+name+input+btnSave+"</div>").appendTo("#formTable");
    
    			/*$("#formTable").css("display","block");
    			$("#formTable").html("attendere...");
    			
    			
    			$.post("select.php", {name:name}, function(data)
    			{
    				$("#formTable").prepend('<div>Ciao</div>');
    			});*/
    			//var name = $(this).text();
    			//var name = $(this).attr("id");
    		});
    Ma c'è modo migliorarla invece di scrivere tutto quel codice html spezzettato... magari appunto inviare i dati ad una pagina php che li controlla e crea tutta la riga html?
    Hutton

    "Una tela bianca, offre infinite possibilità."

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    magari appunto inviare i dati ad una pagina php che li controlla e crea tutta la riga html?
    la parte del codice che hai commentato fa questo(ajax).

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    209
    Potresti chiamare un altro script php che ti restituisce il codice html completo a partire solo dall'id dell'articolo, ciò è più sicuro perchè esponi meno dati ma comporta un'attesa dell'utente ad ogni click

  10. #10
    tu dici all'interno di javascript richiamare una funzione php e non inviare in post i dati?
    Hutton

    "Una tela bianca, offre infinite possibilità."

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.