【问题标题】:Retrieve parameters using .load()使用 .load() 检索参数
【发布时间】:2012-06-20 17:28:34
【问题描述】:

我有一个 jsp 文件:validate.jsp-

var rollNo=document.forms["result_form"]["studentRollno"].value;
var name=document.forms["result_form"]["studentName"].value;

$("#student_result").load("result.jsp?rollNo="+rollNo+"&name="+name);

如您所见,我将两个数据 rollNo 和 name 传递给 result.jsp

现在在 result.jsp 中:

String rollNo=request.getParameter("rollNo");
String name=request.getParameter("name");       

out.print("Your roll number is: "+rollNo+"<br>");
out.print("Your name is: "+name);

一切都很好。当我给出 rollNo=5 和 name=something(在 validate.jsp 的文本框中)时,result.jsp 会按我的意图加载显示消息。唯一的问题是,它只有在我不在文本框中提供空格的情况下才有效!例如:如果我输入 name="Stalin",它可以工作,但对于 name="Stalin" 和 "Stalin Subramanaim",它不起作用。 result.jsp 页面未加载!请帮忙..!!

【问题讨论】:

  • 为清楚起见,请添加代码格式。
  • 我猜你必须先对你的参数进行编码,然后再将它们作为空格发送,当它们被传递并编码为 %20% 我相信时

标签: jquery ajax jsp parameters get


【解决方案1】:

您正在手动构建参数,这可能会导致查询字符串格式不正确。你应该使用 jQuery 帮助器 $.param 来解决这个问题:

el.load( "result.jsp?" + $.param( { rollNo: rollNo, name: name } ) );

【讨论】:

    【解决方案2】:

    它不起作用,因为您不能在 url 中包含空格。您需要将空格转换为特殊字符(javascript函数escape(url)就可以了)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多