【问题标题】:how to store querystring value in variable如何将查询字符串值存储在变量中
【发布时间】:2011-04-05 09:41:13
【问题描述】:

我从 error.jsp 获取值到 staff.jsp 页面。

Welcome to <%= (String)request.getParameter("facilityname")%>

我在 staff.jsp 页面中有一个表单。当用户输入无效的用户名或密码时,staff.jsp 页面刷新并显示错误,现在在页面顶部,我正在获取诊所名称

null 值,我的页面变得像

Welcome to null.

请问我该如何解决?

【问题讨论】:

  • 你能显示表单的标记吗?

标签: jquery jsp query-string


【解决方案1】:

没有更多代码(例如表单的标记),很难说,但是:

如果“facilityname”确实是正在提交的表单中某个字段的name,那么您应该从getParameter 获取该字段的值,这样代码应该可以工作(尽管刷新页面时它会失败没有提交表格)。您是否使用了id 而不是该字段上的名称?大小写正确吗?

如果您希望页面无论是否提交表单都能正常工作:

<%
String facilityname;

facilityname = (String)request.getParameter("facilityname");
if (facilityname != null && facilityname.length > 0) {
    out.print("Welcome to " + facilityname + ".");
}
%>

当然,这(就像您的原件一样)是在邀请某人在您的页面上注入 HTML 标记,因为它不会转义输入中的任何 HTML 字符。您肯定需要使用几个可用的实用程序类之一(this other question on SO 中推荐的各种方法)。

【讨论】:

  • 欢迎来到 我在表单之外获取参数。此参数仅显示诊所名称。该参数与表单无关。问题是当 staff.jsp 刷新时,我在设施名称中得到空值。
  • @Bilal:你必须更彻底地解释你在做什么以及控制从一个页面传递到另一个页面的位置。 一般而言,由于查询字符串参数是特定于请求的(它是GET 的一部分),它不会神奇地从一个页面移动到另一个页面,您必须确保它在页面的 URL(例如在 form action 上)。
  • @Bilal:很好,很高兴能帮上忙!
猜你喜欢
  • 2011-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-27
  • 2012-08-06
  • 2015-06-22
  • 1970-01-01
相关资源
最近更新 更多