Ho n numero di campi di testo nominati nel modulo "Domanda .....". Come posso ottenere tutti i parametri che iniziano con "domanda" dalla pagina JSP all'azione?Ottieni tutti i parametri dalla pagina JSP
28
A
risposta
62
<%@ page import = "java.util.Map" %>
Map<String, String[]> parameters = request.getParameterMap();
for(String parameter : parameters.keySet()) {
if(parameter.toLowerCase().startsWith("question")) {
String[] values = parameters.get(parameter);
//your code here
}
}
5
Questo dovrebbe stampare tutti i parametri che iniziano con "Domanda".
<html><body>
<%@ page import = "java.util.*" %>
<b>Parameters:</b><br>
<%
Enumeration parameterList = request.getParameterNames();
while(parameterList.hasMoreElements())
{
String sName = parameterList.nextElement().toString();
if(sName.toLowerCase.startsWith("question")){
String[] sMultiple = request.getParameterValues(sName);
if(1 >= sMultiple.length)
// parameter has a single value. print it.
out.println(sName + " = " + request.getParameter(sName) + "<br>");
else
for(int i=0; i<sMultiple.length; i++)
// if a paramater contains multiple values, print all of them
out.println(sName + "[" + i + "] = " + sMultiple[i] + "<br>");
}
}
%>
</body></html>
28
Anche se questa è una vecchia questione, che dovevo fare qualcosa di simile oggi, ma io preferisco JSTL:
<c:forEach var="par" items="${paramValues}">
<c:if test="${fn:startsWith(par.key, 'question')}">
${par.key} = ${par.value[0]}; //whatever
</c:if>
</c:forEach>
+0
Inoltre è possibile utilizzare $ {par.key.startsWith ('domanda')} invece di fn: startsWith(). – Cherry
0
Il modo più veloce dovrebbe essere:
<%@ page import="java.util.Map" %>
Map<String, String[]> parameters = request.getParameterMap();
for (Map.Entry<String, String[]> entry : parameters.entrySet()) {
if (entry.getKey().startsWith("question")) {
String[] values = entry.getValue();
// etc.
Si noti che è impossibile fare:
for (Map.Entry<String, String[]> entry :
request.getParameterMap().entrySet()) { // WRONG!
per motivi spiegati here.
0
HTML or Jsp Page
<input type="text" name="1UserName">
<input type="text" name="2Password">
<Input type="text" name="3MobileNo">
<input type="text" name="4country">
and so on...
in java Code
SortedSet ss = new TreeSet();
Enumeration<String> enm=request.getParameterNames();
while(enm.hasMoreElements())
{
String pname = enm.nextElement();
ss.add(pname);
}
Iterator i=ss.iterator();
while(i.hasNext())
{
String param=(String)i.next();
String value=request.getParameter(param);
}
+0
Per favore spiega il tuo codice –
0
localhost:8080/esccapp/tst/submit.jsp?key=datr&key2=datr2&key3=datr3
<%@page import="java.util.Enumeration"%>
<%
Enumeration in = request.getParameterNames();
while(in.hasMoreElements()) {
String paramName = in.nextElement().toString();
out.println(paramName + " = " + request.getParameter(paramName)+"<br>");
}
%>
key = datr
key2 = datr2
key3 = datr3
Problemi correlati
- 1. Ottieni tutti i link sulla pagina html?
- 2. Ottieni tutti i post dalla tassonomia personalizzata in Wordpress
- 3. Ottieni i nomi dei parametri dalla query SQL
- 4. Ottieni i parametri HTTP GET dalla richiesta di Restlet
- 5. Parametri JSP, GET e POST
- 6. Leggi tutti i parametri da SYS_CONTEXT/USERENV
- 7. JSP/servlet legge i parametri dal file delle proprietà?
- 8. Ottieni tutti i link href in DOM
- 9. Ottieni l'indirizzo IP del client in JSP
- 10. Ottieni tutti i percorsi definiti in global.asax
- 11. Ottieni tutti i tipi di immissione password
- 12. Ottieni tutti i percorsi, Laravel 4
- 13. jQuery aggiunta alla pagina JSP
- 14. Ottieni parametri stringa URL?
- 15. Ottieni parametri per i metodi in PowerShell
- 16. UTF-8 codifica JSP pagina
- 17. Visualizzazione dell'albero nella pagina JSP
- 18. javax.el.PropertyNotFoundException in una pagina JSP
- 19. Esecuzione di file .jar nella pagina JSP
- 20. Passare i parametri dalla vista al controller
- 21. recupera i parametri dalla stored procedure?
- 22. Perl, ottieni tutti i valori hash
- 23. Ottieni utente e carica tutti i permessi
- 24. Ottieni tutti i TableRow in un TableLayout
- 25. Jsoup: ottieni tutti i tag di titolo
- 26. Ottieni l'elenco di tutti i percorsi
- 27. Ottieni tutti i membri in Set ordinato
- 28. Ottieni tutti i genitori per un figlio
- 29. Ottieni tutti i modelli eloquenti senza relazione
- 30. Doctrine 2 - Ottieni tutti i record
buona risposta. Una osservazione però, non dovresti iterare una mappa come questa, dovresti usare qualcosa come \t \t \t \t per (Entry paramEntry: parameters.entrySet()) –
Che vantaggio dà questo approccio sopra? – Finbarr
Prestazioni. Nel primo approccio, si scorre le chiavi e si esegue una ricerca per ogni chiave. In pratica, non c'è una grande differenza nelle prestazioni, specialmente per i parametri di richiesta che è una piccola mappa. Tuttavia, si consiglia di evitare la ricerca, se possibile. –