2013-07-22 4 views
2

Это мой код для index.jsp. Я хочу, чтобы при выборе опции в раскрывающемся меню значение должно быть распечатано, а также значение должно быть установлено. Например, если мы выберем «виноград», тогда он должен напечатать «Виноград» и установить значение «Виноград». Я пробовал много вещей, но не смог этого сделать.Как установить значение при выборе смены выпадающего списка в JSP

<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
    <title>Insert title here</title> 
</head> 
<body> 
    <form method="post" action="index.jsp" name="productForm"> 
    <select name="colour" onchange="document.productForm.submit();"> 
     <option value="dropdown">Pls select one 
     <option value="apple">Apple 
     <option value="oragne">Orange 
     <option value="grapes">Grapes 
    </select> 
    <input type="hidden" name="dropdown" id="dropdown"> 
    <input type="submit" value="click" name="dropdown" id="dropdown"> 
    <form> 
    <% 
     String colour = request.getParameter("colour"); 
     out.println(colour); 
    %> 
</body> 
</html> 
+0

очень первое место есть проблема в закрытии бланк формы. закрыть тег формы правильно. –

+0

nO Проблема с тем, что я могу выбрать значение изменения и напечатать его, но не в состоянии установить значение –

+0

Boss Как вы можете выбрать выпадающее меню, если ваше действие такое же, как ваш jsp. Тот же самый jsp загружается, и поэтому вы получаете значение по умолчанию для выпадающего списка. –

ответ

0

Прежде всего, если вы хотите установить значение для выпадающего списка при изменении значения, хорошо оно это делает. Но если вы хотите установить значение, выбранное для сеанса, снова это делает все, что вам нужно сделать, это использовать request.getParameter (цвет) на следующей странице или бэкэнд, где вы обрабатываете запрос. Для печати на консоли у вас есть правильный код. Правильно закрывайте теги.

+0

, пожалуйста, ознакомьтесь с моим кодом и, пожалуйста, обновите его, чтобы после выбора изменить его следует установить значение после отправки. –

+0

Предположим, вы перейдете на следующую страницу после отправки или перейдете к сервлету для обработки вашего запроса. В этом случае вам не нужно устанавливать его здесь, вам нужно поймать его там, используя имя вашего раскрывающегося списка. –

+0

отредактировал ваш код, чтобы закрыть теги должным образом. Теперь на второй странице после отправки, чтобы получить значение вашего раскрывающегося списка: request.GetAttribute ('цвет'); Это должно работать –

0

form и все option теги не закрыты

Пример для правильной разметки option:

<option value="apple">Apple</option> 

Ваш обновленный код должен быть что-то вроде этого:

<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
     <title>Insert title here</title> 
    </head> 
    <body> 
     <form method="post" action="index.jsp" name="productForm"> 
      <select name="colour" id="dropdown"> 
       <option value="dropdown">Pls select one</option> 
       <option value="apple">Apple</option> 
       <option value="oragne">Orange</option> 
       <option value="grapes">Grapes</option> 
      </select> 
      <input type="submit" value="click"> 
     </form> 
     <% 
     String colour = request.getParameter("colour"); 
     out.println(colour); 
     %> 
     <script> 
     document.getElementById("dropdown").value = '<% out.print(colour); %>'; 
     </script> 
    </body> 
</html> 
+0

можно учесть. Интеграция этого с моим кодом передачи пожалуйста –

+0

я создаю Jsp, поэтому, пожалуйста, выполните мой код. Я хочу установить значение после того, как onselect изменится. –

+0

Я добавил обновленный код в ответ, см. «Ваш обновленный код должен быть примерно таким:' –

2

Try Это и дайте мне знать. .

<script type="text/javascript"> 
function setValue(){ 
document.getElementById("dropdown").value=document.getElementById("colour").value; 
document.productForm.submit(); 
return true; 
} 
</script> 

<form method="post" action="index.jsp" name="productForm"> 
    <select id="colour" name="colour" onchange="return setValue();"> 
     <option value="dropdown">Pls select one 
     <option value="apple">Apple 
     <option value="oragne">Orange 
     <option value="grapes">Grapes 
    </select> 
    <input type="hidden" name="dropdown" id="dropdown"> 
    <input type="submit" value="click" name="btn_dropdown"> 
    <form> 

    <% 
     String colour = request.getParameter("colour").toString(); 
     out.println(colour); 
    %> 
+0

org.apache.jasper.JasperException: Исправлена ​​ошибка при обработке страницы JSP /index.jsp по строке 31 Ошибка пришла –

+0

Сначала проверьте, имеет ли она какое-либо значение или нет? с простым кодом jsp. Затем включите свой код сообщения jasper. Итак, проверьте свой код правильно, похоже, он сработал! но в ваших отчетах есть некоторая ошибка кодирования. – Ravi

Смежные вопросы