NutzCN Logo
问答 @Ok跳转其他页面问题( json)
发布于 2698天前 作者 大豪豪 1708 次浏览 复制 上一个帖子 下一个帖子
标签:

比如@Ok("jsp:hello.jsp")
方法体中return的数据我怎么在hello.jsp接收

21 回复

@At @POST @Ok(">>:/WebRoot/hello.jsp") public User select(String name,HttpSession session){ Cnd cnd = Cnd.where("name", "like", "%"+name+"%"); List<User> list = dao.query(User.class, cnd); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).getName()); } User user = new User(); user.setId(6); user.setName("zhaoliu"); user.setPassword("ewqeqweqw"); session.setAttribute("user", user); return user; }

是302跳转, 返回值可不能跨请求, 放在session就好了嘛

后台还是把数据给了hello.jsp 但是浏览器没有变化,还是原来的界面


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>NutzBook demo</title> <!-- 导入jquery --> <script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.min.js"></script> <!-- 把user id复制到一个js变量 --> <script type="text/javascript"> var me = '0'; var base = '/nutzbook'; $(function() { }); </script> net.wendal.nutzbook.bean.User@5cf12eb4 </head> <body> net.wendal.nutzbook.bean.User@5cf12eb4 </body> </html>

浏览器F12 里面有 但是页面没有变化

就这的问题

net.wendal.nutzbook.bean.User@5cf12eb4

这不打印出来了吗?

我现在就是A页面传值到后台
后台处理完了以后
传值给B前台
现在就是看不到B页面

这到底是用@Ok("jsp") 还是 @Ok("json")

贴当前代码.

话说, 这些东西nutzbook都写了一遍了啊


@At @POST @Ok("jsp:jsp.hello") public User select(String name,HttpSession session){ Cnd cnd = Cnd.where("name", "like", "%"+name+"%"); List<User> list = dao.query(User.class, cnd); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).getName()); } User user = new User(); user.setId(6); user.setName("zhaoliu"); user.setPassword("ewqeqweqw"); session.setAttribute("user", user); return user; }

页面怎么写的?

请求页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>NutzBook demo</title>
<!-- 导入jquery -->
<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.min.js"></script>
<!-- 把user id复制到一个js变量 -->
    <script type="text/javascript" src="./js/jquery-2.1.4.js"></script>
       <script type="text/javascript" src="./js/jquery-1.8.3.min.js"></script>

</head>
<body>
名字:<input type="text" id="i"/>
<button type="button"  onclick="submi()">提交</button>
<script type="text/javascript">
    var base = '${base}';
  function submi(){
  var startDat=$("#i").val();
 		alert(startDat);
 		 $.ajax({
    url:'${base}'+ "/user/select",
    type: "post",
    data:{"name":startDat},
    dataType : "json",
      success: function(data) {
                    alert(data);
                    
                }
               });
};

</script>
</body>
</html>

接收页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>NutzBook demo</title>
<!-- 导入jquery -->
<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/2.0.3/jquery-2.0.3.min.js"></script>
<!-- 把user id复制到一个js变量 -->
<script type="text/javascript">
    var me = '<%=session.getAttribute("me") %>';
    var base = '${base}';
    $(function() {
       
    });
</script>

<%=request.getAttribute("obj")%>
</head>
<body>

<%=request.getAttribute("obj")%>


</body>
</html>

ajax可不会把内容显示到当前页面, 也不会主动执行跳转.

看你的逻辑, 应该是这样写, 把页面重定向过去, 或者直接表单提交

var base = '${base}';
function do_submit () { // 原方法名的单词拼错
    var data=$("#i").val(); // 又是个神奇的i, 又是个不明所以的变量名startDat
    alert(data);
    window.location  =  '${base}'+ "/user/select?name="+data;
};

感谢感谢 可以了灰常感谢

添加回复
请先登陆
回到顶部