繁体   English   中英

如何通过spring框架中的控制器使用querystring将参数发送到jsp页面?

[英]How to send parameter to a jsp page using querystring via a controller in spring framework?

我有一个包含数据表的JSP页面。 我想将单击的行第一列的内容传递给另一个jsp页面。 我正在使用spring框架。 我试图实现它,但是有一些问题。 问题是:当我在另一个jsp页面中检索参数时,我得到了一些内容,但是第一个空格之后的内容被跳过了。

这是我尝试过的代码:源jsp页面:

$(document).ready(function(){
$("#mytable tbody tr").click(function(){
    var aPos = $('#mytable').dataTable().fnGetPosition(this);
    var aData = $('#mytable').dataTable().fnGetData(aPos);     
    pass_on=aData[0];
    window.location.href = "/test/integrate"+"?"+"group="+pass_on;
});
});     

控制器:

@RequestMapping(value="/test/integrate", method = RequestMethod.GET)
public String pass_parameter_by_type(ModelMap model,HttpServletRequest request,HttpServletResponse response) {

return "destination";
}

目标jsp页面:

<body>
<input type="button" id="sub_but">
<input type="hidden" value=<%=request.getParameter("group") %> id="group_parameter">
$("#sub_but").click(function(){
alert($("#group_parameter").val());             
        });
</body>

如果传递的值是“ cool guy”,则在url中显示test / integrate?group = cool guy。 但在警报中仅显示“酷”。 请帮忙。

这是我为获得结果所做的工作:我用下划线(“ _”)替换了blank。

pass_on=aData[0];
var res=pass_on.replace(/ /g,"_");
window.location.href = "/test/integrate"+"?"+"group="+res;

没有更多的变化。 其余的工作正常。 我仍然不知道为什么%20无法正常工作。

您需要通过cool%20guy

网址不理解特殊字符

http://www.w3schools.com/tags/ref_urlencode.asp

在您的控制器中执行以下操作:

@RequestMapping(value="/test/integrate", method = RequestMethod.GET)
public String pass_parameter_by_type(ModelMap model,@RequestParam String group,HttpServletRequest request,HttpServletResponse response) {
model.addAttribute("group",group);
return "destination";
}

在您的其他JSP中执行以下操作:

<body>
<input type="button" id="sub_but">
<input type="hidden" value="${group}" id="group_parameter">
$("#sub_but").click(function(){
alert($("#group_parameter").val());             
        });
</body>

希望它能解决您的问题。 :)

对您的文本进行编码。 对于javascript

escape(...)

对于Java,请使用:

URLEncoder.encode( ,encoding)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM