首页 > 解决方案 > getRequest.getParameter("param1") 为 Element.value 返回空

问题描述

我正在尝试使用 jqGrid 运行 ajax 调用。但是,参数并没有一直发送到 getRequest()。

如果我做javascript:

var param1 = document.getElementById("idInput").value;
var url = "${ctx}/Method.action?getTheseRecords&param1="+param1;

然后,当我调用 Java 时,它返回空白。但是,如果我设置了 var param1,那么我会得到正确的数据。

所以这有效:

var param1 = "M";
var url = "${ctx}/Method.action?getTheseRecords&param1="+param1;

所以第一种方式给出一个空字符串,第二种给出一个String ==“M”:

String param1 = getRequest().getParameter("param1");

我不知道是否有人知道为什么这不起作用?因为我在放入Ajax之前查看了url,它很好。

标签: javascriptjavaajaxactionget-request

解决方案


你不编码你的网址。这可能是问题所在。

var url = "${ctx}/Method.action?getTheseRecords&param1=" + encodeURIComponent(param1);

除此之外,一切对我来说似乎都很好。


推荐阅读