Foros del Web » Programación para mayores de 30 ;) » Java »

Acceder al servlet al momento de seleccionar una opcion del control select

Estas en el tema de Acceder al servlet al momento de seleccionar una opcion del control select en el foro de Java en Foros del Web. Hola, tengo una problema con respecto al querer acceder al servlet pinchando en algun item del control select, ya que cuando lo pincho no accede ...
  #1 (permalink)  
Antiguo 14/03/2011, 09:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Pregunta Acceder al servlet al momento de seleccionar una opcion del control select

Hola, tengo una problema con respecto al querer acceder al servlet pinchando en algun item del control select, ya que cuando lo pincho no accede al servlet, en cambio al pinchar en el imput si accede si ningun problema.

por favor, podrian indicarme como puedo acceder al servlet al momento de acceder a alguna opcion del control select?

por otro lado, puede darse el caso de acceder a otro servlet que no sea el que figuar en el Form



<form name="form1" method="post" action="<%=request.getContextPath() %>/ValeAgregaItem" target="ifrdetalle">


<input type="submit" name="submit"/>
<select name="nombreUJ" id="nombreUJ"
onchange="__doPostBack('','');"
style="font-size: 8pt; text-transform: uppercase; font-weight: bold"
class="Cogorno">
<option selected value="-1">-- ESPERANDO SELECCION --
</option>
<c:forEach items="${requestScope.listaNomSpeed}" var="nombreUJ">
<option value= '${nombreUJ.username}' > ${nombreUJ.nombre} </option>
</c:forEach>
</select>
  #2 (permalink)  
Antiguo 14/03/2011, 14:22
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 7 años, 6 meses
Puntos: 20
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

hola Jona, tienes que utilizar JavaScript para llamara al servlet cuando seleccionas un determinado Item de la lista

si quieres te ayudo

saludos
  #3 (permalink)  
Antiguo 14/03/2011, 15:14
 
Fecha de Ingreso: diciembre-2009
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Pregunta Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

Cita:
Iniciado por sivadmp Ver Mensaje
hola Jona, tienes que utilizar JavaScript para llamara al servlet cuando seleccionas un determinado Item de la lista

si quieres te ayudo

saludos
hola amigo, si cree un javascript para que me capture el Item, function sublist(formulario, selecteditem)
{

location.replace("<%=request.getContextPath() %>/vales/usuario/registrar/RegistrarVale_R?id=" + selecteditem);

RequestDispatcher rd = request.getRequestDispatcher("RegistrarVale_R");
rd.forward(request,response);

}

pero a la hora que eejcuta el servlet (doPost) la pagina se vuelve a constuir
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/vales/usuario/registrar/valesdetalle.jsp");
dispatcher.forward(request, response);


y eso es lo yo no quiero, tan solo estoy mandando el item seleccionado al servlet para que me la guarde en una session, es ahi me problema, mi necesidad es poder guardar el item seleccionado, en una session para poder usarla en otro jsp, me han comentado que puedo usar ajax, pero al verdad no se como usarlo en este caso puntual.
  #4 (permalink)  
Antiguo 14/03/2011, 15:37
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 7 años, 6 meses
Puntos: 20
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

estas utilizando location.replace y eso si o si te va recargar por que estas redireccionando

utiliza


$("#txt").load("<%=constante%>ServletModificarCaso ", {textoTitulo:caso, opcao:1});
  #5 (permalink)  
Antiguo 14/03/2011, 15:48
 
Fecha de Ingreso: diciembre-2009
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

Hola siva una consulta,
#txt : este seria el nombre de mi control select ?
constante : este seria el itemselection ??
ServletModificarCaso : nombre de mi servlet ???
{textoTitulo:caso, opcao:1}); : esto si no se que pueda ser.

$("#txt").load("<%=constante%>ServletModificarCa so ", {textoTitulo:caso, opcao:1});
  #6 (permalink)  
Antiguo 14/03/2011, 16:09
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 7 años, 6 meses
Puntos: 20
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

hola Jona mejor utiliza este codigo es mas sencillo que anterior

Código Javascript:
Ver original
  1. function addSer(){
  2.         var id=$("#cbxLista").val(); // se tiene el objeto select
  3.         $("#txtHide").load("MunicipioServlet", {id_val:id});
  4.  
  5. }

donde cbxLista es la lista o ComboBox
txtHide es el componente de texto <input type="hidden">, solo para llamar al Servlet
id_val: parametro de entrada del servlet

Código java:
Ver original
  1. String id=request.getParameter("id_val");
  2. HttpSession sesion = request.getSession(true);
  3. sesion.setAttribute("id_valor",id);

saludos
  #7 (permalink)  
Antiguo 14/03/2011, 16:23
 
Fecha de Ingreso: diciembre-2009
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

Hola siva y en que parte de mi servlet lo pego
String id=request.getParameter("id_val");HttpSession sesion = request.getSession(true);sesion.setAttribute("id_v alor",id);

este es mi servlet
public class RegistrarVale_R extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {


protected void doGet
protected void doPost

lo que unico que deseo es que se mantenga la web tal cual,
  #8 (permalink)  
Antiguo 14/03/2011, 16:39
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 7 años, 6 meses
Puntos: 20
Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

dentro de processRequest

Código java:
Ver original
  1. protected void processRequest(HttpServletRequest request,
  2.             HttpServletResponse response) throws ServletException, IOException {
  3.         response.setContentType("text/html;charset=UTF-8");
  4.         PrintWriter out = response.getWriter();
  5.  
  6.         String id_val = request.getParameter("id_val");
  7. }
  #9 (permalink)  
Antiguo 15/03/2011, 07:56
 
Fecha de Ingreso: diciembre-2009
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Pregunta Respuesta: Acceder al servlet al momento de seleccionar una opcion del control select

Cita:
Iniciado por sivadmp Ver Mensaje
dentro de processRequest

Código java:
Ver original
  1. protected void processRequest(HttpServletRequest request,
  2.             HttpServletResponse response) throws ServletException, IOException {
  3.         response.setContentType("text/html;charset=UTF-8");
  4.         PrintWriter out = response.getWriter();
  5.  
  6.         String id_val = request.getParameter("id_val");
  7. }
Hola Siva, mira asi cargo mi control select, en el cual tengo invoco al javascript sublist


<td>
<select name="nombreUJ" id="nombreUJ"
onChange="javascript:sublist(this.form, nombreUJ.value);"
style="font-size: 8pt; text-transform: uppercase; font-weight: bold"
class="Cogorno">
<option selected value="-1">-- ESPERANDO SELECCION --
</option>
<c:forEach items="${requestScope.listaNomSpeed}" var="nombreUJ">
<option value= '${nombreUJ.username}'> ${nombreUJ.nombre} </option>
</c:forEach>
</select>


</td>



<script language="JavaScript">

function sublist(formulario, selecteditem)
{
var id=$("#nombreUJ").val(); // se tiene el objeto select
$("#txtHide").load("RegistrarVale_R", {id_val:id});
return;
}

</script>


y luego ese es mi servlet que tiene por nombre RegistrarVale_R en el cual puse el metodo que me indicaste, pero al seleccionar un item no entra al metodo en mencion processRequest, solo quiero que entre y almacene en una session el resultado,

package pe.com.cogorno.ventas.servlet.vales.usuario.regist rar;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import pe.com.cogorno.ventas.dao.*;
import pe.com.cogorno.ventas.negocio.UtilesManager;
import pe.com.cogorno.utiles.*;
import java.util.Vector;
import pe.com.cogorno.ventas.transfers.*;
@SuppressWarnings("serial")
public class RegistrarVale_R extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {

public RegistrarVale_R() {
super();
}

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doProcess(request, response);
}

protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
doProcess(request, response);
}

protected void processRequest(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();

String id_val = request.getParameter("id_val");
}


gracias por tu tiempo siva,

Etiquetas: jsp, jsp-servlets, select, servlet, submit
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:44.