Javascript getRequest.getParameter(“param1”)返回Element.value为空
我正在尝试使用jqGrid运行一个ajax调用。但是,参数并非始终发送到getRequest() 如果我使用javascript:Javascript getRequest.getParameter(“param1”)返回Element.value为空,javascript,java,ajax,action,get-request,Javascript,Java,Ajax,Action,Get Request,我正在尝试使用jqGrid运行一个ajax调用。但是,参数并非始终发送到getRequest() 如果我使用javascript: var param1 = document.getElementById("idInput").value; var url = "${ctx}/Method.action?getTheseRecords¶m1="+param1; 然后,当我调用Java时,它返回为空。但是,如果设置var param1,则得到正确的数据 所以这是可行的: var
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;
因此,第一种方法给出一个空字符串,第二种方法给出一个字符串==“M”:
我不知道是否有人知道为什么这不起作用?因为在将url放入Ajax之前,我已经查看了url,这很好。您不需要对url进行编码。这可能就是问题所在
var url = "${ctx}/Method.action?getTheseRecords¶m1=" + encodeURIComponent(param1);
除此之外,我觉得一切正常。检查
idInput
字段名是否正确匹配,是否有值。那会回答的。我感觉这会回答你的问题~我在jQuery中也遇到过很多这样的问题。谢谢你,菲尔!这个问题原来是一个错误,因为我在重新加载初始值后调用了每个搜索。一般来说,这是一个很好的建议,但我可以保证这不会解决问题。我确实做了类似的事情。我发现了问题所在。jqGrid正在重新加载原始url。所以我需要在重新加载期间更改url。这只是我的一个新手错误。非常感谢。
var url = "${ctx}/Method.action?getTheseRecords¶m1=" + encodeURIComponent(param1);