【发布时间】:2013-06-01 21:47:45
【问题描述】:
我有一个 extjs 表单,我正在尝试使用 Ext.Ajax.request 将参数发布到 servlet。调用正在工作并且正在调用 servlet,但由于某种原因,参数的值没有被发送。我会发布我的代码,谁能告诉我我做错了什么。提前致谢。
这是来自 ExtJS 表单的调用:
buttons: [{
text: 'Search',
handler: function(){
var fName = Ext.getCmp("fName").getValue();
Ext.Ajax.request({
url : 'LookUPCustomer',
method: 'POST',
headers: { 'Content-Type': 'application/json'},
params : fName, // this value isn't being passed to servlet
success: function ( result, request ) {
var resultData1 = JSON.parse(result.responseText);
},
failure: function ( result, request ) {
resultData = JSON.parse(xmlhttp.responseText);
}
});
}];
这里是 servlet 代码:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
// value of fName is null, not being passed from the form
String fName = request.getParameter("fName");
// does some processing....
// print back to the form
response.setContentType("application/json");
out.println(jsArray);
}
【问题讨论】:
-
fName包含什么?作为参数,它应该类似于fName=someValue。键=值 -
fName 包含一个字符串值
-
第一步应该是查看 HTTP 请求(Firebug、Chrome 开发工具等)以确定是否存在预期的参数。
标签: java ajax servlets extjs extjs4