Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505

    [JSP] ottenere name e value da un tag <input>

    Ho una form creata dinamicamente in una jsp a seguito di una query sul DB.
    Le righe sono il contenuto del result set ottenuto e rappresentano un elenco di ingredienti.
    Alla fine di ogni riga c'è un campo di testo nel quale inserire la quantità che si vuole acquistare di quell'ingrediente.

    <input type="text" id="ingrediente<%= i %>" name="<%= rs.getString("nome") %>" value="0" />

    l'attributo name contiene il nome dell'ingrediente, value la quantità che se ne vuole acquistare.
    Ho aggiunto l'attributo id in modo che ogni input si chiami in modo facilmente rintracciabile nella servlet visto che altrimenti non saprei come fare prendendo l'attributo name che varia a seconda della query.

    Il mio problema è questo: nella servlet mi serve sapere sia l'attributo name che value per ogni campo che presenti un valore > 0, ma non so come fare, riesco a prendere value, ma non name.

    Come posso fare?

    questa e la form:
    Codice PHP:
    <form name="rimanenze" action="VerificaRimanenze" method="post">
    <
    table width="650" border="0" cellpadding="6">
        <
    tr>
            <
    td width="25%">[b]Ingrediente[/b]</td>
            <
    td width="25%"><p align="center">[b]Unità di misura[/b]</p></td>
            <
    td width="20%"><p align="center">[b]Disponibilità[/b]</p></td>
            <
    td width="20%"><p align="center">[b]Soglia[/b]</p></td>
            <
    td width="10%"><p align="center">[b]Acquista[/b]</p></td>
        </
    tr>
            <% 
    rs IngrController.getInEsaurimento();
               while(
    rs.next()) { %>
        <
    tr>
            <
    td><%= rs.getString("nome") %> </td>
            <
    td><%= rs.getString("unitaDiMisura") %></td>
            <
    td><%= rs.getString("disponibilita") %></td>
            <
    td><div align="center"><%= rs.getString("soglia") %></div></td>
            <
    td><div align="center"><input type="text" id="ingrediente<%= i %>" name="<%= rs.getString("nome") %>" value="0" onChange="selezionato(this)" /></div></td>
        </
    tr>
            <%
    i++; } %>
        <
    tr>
            <
    td></td>
            <
    td></td>
            <
    td></td>
            <
    td><input type="hidden" name="totale_selezionati" value="0"/></td>
            <
    td><input type="submit" name="acquista" value="Acquista" /></td>
        </
    tr>
    </
    table
    selezionato() è una funzione javascript che tiene il conto di quanti ingredienti hanno il campo value > 0, ovvero quanti sono gli ingredienti che si intende acquistare e aggiorna il campo nascosto totale_selezionati.

    Questo è il metodo doPost della servlet
    Codice PHP:
    protected void doPost(HttpServletRequest requestHttpServletResponse responsethrows ServletExceptionIOException {
            
    int i Integer.parseInt(request.getParameter("totale_selezionati")); //numero di ingredienti con quntità scelta > 0
            
    int j 0//conta gli ingredienti con quantità > 0 trovati
            
    int aux 0//cicla su tutti gli ingredienti nel form
            
    String[][] ingrediente = new String[i][2];

            while (
    i) { //finché il numero di ingredienti con quantità > 0 trovati non raggiunge il valore conosciuto
                
    if(Integer.parseInt(request.getParameter("ingrediente"+aux)) > 0) {
                    
    ingrediente[j][0] = ; //qui dovrei prendere l'attributo name
                    
    ingrediente[j][1] = request.getParameter("ingrediente"+aux); //questo prende l'attributo value
                    
    j++;
                    
    aux++;
                }
                else
                    
    aux++;            
            }
            
            
    IngrController.aggiungiIngredienteMagazzino(ingrediente,i);
            
            
    RequestDispatcher dispatcher request.getRequestDispatcher("/verificarimanenze.jsp");
            
    dispatcher.forward(requestresponse);
        } 

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Ho risolto aggiungendo un altro campo nascosto.

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.