【发布时间】:2013-07-17 18:35:50
【问题描述】:
我有以下最新的带有多个参数的 jquery v aajx 调用。
在 java 代码中,我只能获取第一个参数值,其余的为空。
$.ajax({
url : '<portlet:resourceURL id="entitledRequest"/>',
data: '<c:out value="pfx= ${account.accountNumber}-${outletUI.outlet}-${count}&acc=${account.accountNumber}" />',
cache: false,
success : function(result) {
//targetElem.html(result); update uI
}
});
以下是我的 java 代码,只有第一个参数不为空,之后所有参数都为空,我有调试 http 请求,所有参数都存在于请求对象中,任何线索这里有什么问题吗?
Controller("ajaxRequestController")
@RequestMapping(value = "VIEW")
public class AjaxRequestController implements PortletConfigAware {
@ResourceMapping("entitledRequest")
public void getServiceAutoComplete(ResourceRequest request, ResourceResponse response) throws IOException {
String elemPrefix = request.getParameter("pfx");
String acc = request.getParameter("acc"); // found null
String mac = request.getParameter("mac"); // found null
}...
【问题讨论】:
-
elemPrefix的值是多少?它包含完整的c:out还是仅包含pfx参数?看起来您没有mac参数。 -
正如您在问题中看到的那样,所有参数只有一个 c:out 并为请求参数创建了一个字符串。
-
request.getParameter("pfx");返回的字符串值究竟是什么? -
它是唯一编号,例如 456565-44-1
-
尝试在javascript中将值设置为
vars,并将它们作为key:value对传递给data。
标签: java spring portlet spring-portlet-mvc