我正在从我的ajax进行servlet调用。我如何在我的ajax函数中获得响应作为变量。
function myajaxcall(name) {
var url = "/myServlet?name="+name
$.ajax({
type: 'GET',
url: url,
success: function() {
console.log("Success");
// also i want to get response from header which i have set in my servlet class . and call a another javascript method
// call a another javascript method by passing the response from servlet .
}
});
}
Servlet代码是:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String code=request.getParameter("name")+"Hi";
response.addHeader("code", code);
}
现在我想使用我的"代码" ajax调用中的变量,以便我可以将其发送到另一个javascript方法..
提前致谢。
答案 0 :(得分:0)
正如jQuery documentation中所述,jQuery success
函数的$.ajax()
设置是函数或函数数组,最多有三个参数(并且是随后在AJAX请求返回成功响应后调用时传递了三个参数:
成功
类型:功能(任何数据,字符串textStatus,jqXHR jqXHR)
如您所见,第三个参数属于jqXHR
类型,其函数为getResponseHeader()
。
像这样的东西应该工作(虽然未经测试):
$.ajax({
type: 'GET',
url: url,
success: function(data, status, xhr) {
var code = xhr.getResponseHeader('code');
yourFunction(code);
console.log("Success");
}
});