Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    accordion , indice e id

    ciao.
    Ho uno script con un accordion jquery , riesco a conoscere via js l'indice attivato , il problema è che devo risalire ad un id per un azione lato server in php.
    Ho pensato di creare alla creazione della pagina un array di corrispondenza da js a php , ma non mi sembra una bella soluzione.
    Devo in pratica creare le pagine in modo dinamico da php e db , ogni pagina ha un id (che è l'id del db)e devo conoscere questo id per aggiungere dei dati al db in base all iterazione dell utente con l'accordion devo quindi risalire all id della pagina via js per passarlo al php.

    questo è il codice dell accordion:
    codice:
    <div id="accordion">
    	<h3>Section 1</h3>
    	<div>
    		
    
    que vulputate.</p>
    		premi qui
    	</div>
    	<h3>Section 2</h3>
    	<div>
    		
    
    usto. Vivamus non quam. In suscipit faucibus urna. </p>
    	</div>
    	<h3>Section 3</h3>
    	<div>
    		
    
    iaculis leo purus venenatis dui. </p>
    		<ul>
    			[*]List item one
    			[*]List item two
    			[*]List item three
    		[/list]
    	</div>
    	<h3>Section 4</h3>
    	<div>
    		
    
    nubia nostra, per inceptos himenaeos. </p>
    	</div>
    </div>
    ho visto che ogni pagina dell accordion ha un link:
    h3>Section 4</h3>
    potrei settare il valore di un campo hidden tramite la pressione del link e leggere il valore di questo campo in php?


    basterebbe penso:
    <h3>Section 1</h3>
    per il primo che ha un id 1
    <h3>Section 1</h3>
    per il secondo che ha un id 12
    ecc ... l'id lo vadio a settare da php cosi' :
    <a href="functjs('<?php echo($item->id)?>')ecc......

    ma come faccio a richiamare una funzione dall' href di un link?

    grazie.

  2. #2
    Hai tanti metodi per farlo, te ne faccio qualche esempio tra cui il secondo risponde alla tua ultima domanda:

    codice:
    <html>
    	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    	<script>
    		function set(id) {
    			alert("setting id: " + id);
    		}
    		
    		function AccordionWrapper(element) {
    			this.element = element;			
    			var that = this;
    			this.element.find("a[data-id]").click(function() {
    				that.setId($(this).attr("data-id"));
    			});
    		};	
    		AccordionWrapper.prototype.setId = function(id) {
    			alert("setting id: " + id);
    		};
    		
    		$(document).ready(function() {
    			$("#accordion a").click(function(evt) {
    				set($(this).attr("data-id"));				
    			});
    			
    			var wr = new AccordionWrapper($("#accordion-obj"));
    		});
    	</script>
    	
    	<body>
    		
    		<ul>
    			[*]Primo
    			[*]Secondo			
    		[/list]
    				
    		
    		<ul>
    			[*]Primo
    			[*]Secondo
    		[/list]
    		
    		
    		<ul id="accordion">
    			[*]Primo
    			[*]Secondo
    		[/list]
    		
    		
    		<ul id="accordion-obj">
    			[*]Primo
    			[*]Secondo
    		[/list]
    	</body>
    </html>

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.