Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di ercoli
    Registrato dal
    Mar 2002
    Messaggi
    173

    Select dinamica jquery+json+php

    Grazie a quanti vorranno rispondere.

    Sto cercando di implementare una form con una select dinamica.

    Questo è il codice della form:
    [CODE]
    <html>

    <head>
    <script src="../jquery-1.4.4.js"></script>
    <script type="text/javascript">

    function popolaTipoPrestazione() {

    $.getJSON('prestazioni.php', {id_reparto:$('#reparto').val()}, function(data) {

    var select = $('#tipoPrestazione');
    var options = select.attr('options');
    $('option', select).remove();

    $.each(data, function(index, array) {
    options[options.length] = new Option(array['PRESTAZIONE']);
    });

    });

    }

    $(document).ready(function() {

    popolaTipoPrestazione();
    $('#reparto').change(function() {
    popolaTipoPrestazione();
    });

    });
    </script>
    </head>

    <body>
    <label for="reparto">Reparto:</label>

    <select id="reparto" name="reparto">
    <option selected="selected">-

  2. #2
    Utente di HTML.it L'avatar di ercoli
    Registrato dal
    Mar 2002
    Messaggi
    173
    Scusate, non è per uppare, ma non riesco a modificare il post precedente (problemi sul server?), che chiaramente è incompleto.

    Ecco la domanda completa:

    Grazie a quanti vorranno rispondere.

    Sto cercando di implementare una form con una select dinamica.

    Questo è il codice della form:
    codice:
    <html>
    
    <head>
    <script src="../jquery-1.4.4.js"></script>
    <script type="text/javascript">
    
    function popolaTipoPrestazione() {
       
        $.getJSON('prestazioni.php', {id_reparto:$('#reparto').val()}, function(data) {
    
            var select = $('#tipoPrestazione');
            var options = select.attr('options');
            $('option', select).remove();
    
            $.each(data, function(index, array) {
                options[options.length] = new Option(array['PRESTAZIONE']);
            });
    
        });
    
    }
    
    $(document).ready(function() {
    	
    	popolaTipoPrestazione();
    	$('#reparto').change(function() {
    		popolaTipoPrestazione();
    	});
    	
    });
    </script>
    </head>
    
    <body>
    <label for="reparto">Reparto:</label>
    
    <select id="reparto" name="reparto">
    <option selected="selected">-- seleziona --</option>
    <?
    
    // mi connetto al DB
    include("dbconfig.php");
    
    // Query selezione tutti i reparti. 
    $sql = "select * from reparti order by reparto"; 
    
    // Eseguo la query. 
    $result = mysql_query($sql, $conn); 
    while($reparto = mysql_fetch_array($result)) {
    ?>
    
    <option value="<?php echo $reparto['id']; ?>"><?php echo $reparto['reparto']; ?></option>
    
    <?php
    }
    ?>
    
    </select>
    </p>
    
    
    
    Prestazione:
        <select name="PRESTAZIONE" id="TipoPrestazione">
        </select>
    </p>
    </body>
    </html>
    Questo il codice del file richiamato da json:

    codice:
    <?
    
    if(isset($_GET['id_reparto'])) {
    	 
    $reparto = $_GET['id_reparto'];
        $stmt = $pdo->prepare("SELECT PRESTAZIONE FROM generale WHERE id_reparto = '$reparto' ORDER BY PRESTAZIONE");
        $stmt->execute(array($_GET['id_reparto']));
        $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    }
    
    echo json_encode($rows);
    ?>
    Il problema che ho é che la select Prestazione non viene popolata; per altro analizzando la risposta del server con Firebug l'array viene popolato. Eppure...

    Dove sbaglio?

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.