将属性从Servlet传递给jsp时值不匹配

时间:2017-01-06 12:53:08

标签: java jsp servlets

在Servlet中设置值并使用RequestDispatcher

在jsp中检索它

在test1Servlet中:

了request.setAttribute( “阿尔法”,阿尔法);

RequestDispatcher rd = request.getRequestDispatcher(“Test.jsp”);

rd.forward(请求,回复);

在Test.jsp中: 单击按钮am对另一个具有请求属性值的servlet进行ajax调用

$(document).ready(function(){

  $(".button1").click(function(){
            $.ajax({

  type: "POST",

  url: "<%=request.getContextPath()%>/test2Servlet", 

 data: {"alpha":<%=request.getAttribute("alpha")%>,"ins":10},

 dataType:"text",

在这种情况下,如果我在test1Servlet中将alpha值设置为0017,则在jsp中获得0015。

此值如何变更?

任何人都可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

那里没有错误。你得到了正确的价值 在许多语言中,前面带零的数字被解释为八进制或十六进制:

  • OCTAL:017 = 15
    (因为1被评估为8和7,因此它是。所以1×8 + 7 = 15)。
  • 十六进制:0x17 = 1×16 + 7 = 23

试一试:

.array()

由于post参数转换为字符串,因此可以将值放在引号中。或者避免数字中的前导零。