如何在JSP中从JS执行JAVA代码

时间:2017-01-23 18:13:31

标签: javascript java ajax jsp

我正在Netbeans 8.1上使用Java Web,实际上我正在使用AJAX开发这个问题,这个问题阻止了我:

这是我在JSP中的JS函数:

$("#formAddFundo").submit(function(event) {

 /* stop form from submitting normally */
 event.preventDefault();

 /* get the action attribute from the <form action=""> element */
 var $form = $(this),
     url = $form.attr('action');


 var status = 0;

 if (document.getElementById("chkFundo").checked)
     var status = 1;

 /* Send the data using post with element id name and name2*/
 var posting = $.post(url, {
     hIdFundo: $('#hIdFundo').val(),
     txtNombre: $('#txtNombre').val(),
     status: status,
     btnAddGrid: $('#btnAddGrid').val()
 });

 /* Alerts the results */
 posting.done(function(data) {

     $.get('addFundo', function(responseJson) {
         var t = $('#dt_basic').DataTable();
         t.clear();

         $.each(responseJson, function(index, objeto) { // Iterate over the JSON array.
             var estado;

             if (objeto.status === 1) {
                 estado = "Activo";
             } else {
                 estado = "No activo";
             }

             t.row.add([
                 objeto.idfundo,
                 objeto.nombre,
                 estado,
                 "<i class=\"btn btn-secondary fa fa-pencil\" onclick=\"update('" + objeto.nombre + "', '" + objeto.idfundo + "', '" + objeto.status + "');\"></i></a><a><i class=\"btn btn-secondary fa fa-trash-o\" onclick=\"borrar('" + objeto.nombre + "', '" + objeto.idfundo + "');\"></i></a>"
             ]).draw(false);
         });


         $('#alerta').html("<div class='alert alert-warning'><a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a><strong>Atención!</strong> " + <%= session.getAttribute("Respuesta") %> +" </strong></div>");
     });

     limpiar();
 });

 });

这是我的servlet,JS去获得响应:

 String json = new Gson().toJson(listaFundos);

 response.setContentType("application/json");
 response.setCharacterEncoding("UTF-8");
 response.getWriter().write(json);

 request.getSession().setAttribute("Respuesta", resp);

现在。当POST方法用Json结束他的函数时,我需要在JSP中打印HTML(#alerta)而不刷新页面。会话变量和scripplet仅在页面刷新时执行一次,而不是用于进一步执行..

 $('#alerta').html("<div class='alert alert-warning'><a href='#' class='close' data-dismiss='alert' aria-label='close'>&times;</a><strong>Atención!</strong> " + <%= session.getAttribute("Respuesta") %> +" </strong></div>");

0 个答案:

没有答案