我正在尝试使用jqGrid运行ajax调用。但是,这些参数不会一直都发送到getRequest()。
如果我使用JavaScript:
var param1 = document.getElementById("idInput").value;
var url = "${ctx}/Method.action?getTheseRecords¶m1="+param1;
然后,当我用Java调用时,它又变回空白。但是,如果设置了var param1,那么我将获得正确的数据。
因此可行:
var param1 = "M";
var url = "${ctx}/Method.action?getTheseRecords¶m1="+param1;
所以第一种方式给出一个空的String,第二种方式给出一个String ==“ M”:
String param1 = getRequest().getParameter("param1");
我不知道是否有人知道为什么这行不通?因为我在将URL放入Ajax之前已经看过它了,所以很好。
您未对网址进行编码。这可能是问题所在。
var url = "${ctx}/Method.action?getTheseRecords¶m1=" + encodeURIComponent(param1);
除此之外,我觉得一切都很好。