我创建了一个包含2个变量的jsp页面并使用传递给Servlet并在控制台中显示的jquery,现在我需要将一个变量传递回jquery.How来编写它?请参阅我使用的servlet和js。
jquery
$(document).ready(function(){
$("#click").click(function(){
var form = $('#new');
alert("serialize :"+form.serialize());
$.ajax({
url: 'login',
data: form.serialize(),
type: 'post',
success: function(data){
alert("Reached Servlet"+data);
}
});
});
});
Servlet发布如下
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("in POST");
String a=request.getParameter("txt_name");
String ad=request.getParameter("txt_address");
PrintWriter ins_writer= response.getWriter();
System.out.println("console");
ins_writer.write("In servlet POST > value for Name : "+a);
System.out.println("a > "+a +">>>>>"+ad);
System.out.println("----------------------------From Jquery-------------");
System.out.println("Name from JSP> "+a);
System.out.println("Address from JSP> "+ad);
String pq="Amanda";
}
我只是想把这个'pq'值传递给jquery?请帮助我!!
答案 0 :(得分:0)
您可以传回隐藏的元素,然后在ajax请求完成时输出:
在servlet中:
System.out.println("<input type='hidden' id='pqId' value='"+pq+"'/>");
然后在ajax中将响应附加到隐藏区域,并获取该字段的值:
$.ajax({
url: 'login',
data: form.serialize(),
type: 'post',
success: function(data){
$('body').append('<div style="display:none;">'+data+'</div>');
alert($('#pqId').val());
}
});
答案 1 :(得分:0)
将System.out.println更改为ins_writer.write
像:
ins_writer.write("<input type='hidden' id='pqId' value='"+ad+"'/>");
以前的答案应该可以正常使用。