Calling a servlet in a popup

0

Good morning, guys ...

How can I execute a servlet by opening it in a popup and passing 1 parameter? My code looks like this: - In the page that calls

<form name="frmcadentidade" method="get" action="DetalheEntidade">
   <input type='submit' id='btncnes' onclick='abrirConsulta()' 
   value='CONSULTAR'></input>
</form>

function abrirConsulta(){
window.open ('servlets/DetalheEntidade.java', 'pagina', 
"width=250 height=250 left=400 top=250");
}

In this case, the parameter I want to pass is another value for this button.

    
asked by anonymous 27.09.2018 / 15:22

1 answer

1

You can solve this problem using ajax requests, and use the jQuery javascript library.

I'll simulate your servelet in my example:

//este é um exemplo de ajax sendo chamado ao clickar em um botao qualquer do seu html.

//ele pega o id do botao, e no click desse botao ele começa a função ajax
$('#btncnes').click(function(){ 
  var valorInput = $("#value").val();  
  alert("funcionou, texto do input: "+valorInput);  
  $.ajax({ 
    //aqui a url do seu servelet, no caso eu "usei um servelet publico"
    url: 'http://www.json-generator.com/api/json/get/cdYItaXpvm?indent=2', 
    //o tipo do metodo GET,POST, PUT, DELETE
    type: 'GET', 
    //os dados que eu vou enviar é mais usado quando voce vai inserir algo ou alterar
    data: {valorInput: valorInput},
    //caso de certo o que fazer:
    success: function(data) { 
      console.log('retorno do servelet');
      console.log(data);
    } 
  }); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><formname="frmcadentidade" action="DetalheEntidade">
   <input type='text' value="seu texto" id='value' />
   <button type='button' id='btncnes' onclick='podechamarAfuncaoAjaxPorAquiTb()'>CONSULTAR</button>
</form>

I commented on how this request works, and in this way you can call a servlet from anywhere that has an ID: D

    
27.09.2018 / 20:41