求高手:ajax返回的元素个数如何放到jsp页面的table中作为for循环的条件?
比如说返回元素个数为4,想把它作为jsp页面table中的<%for(inti=0;i<?;i++){}%>,的循环条件,请问怎么把4放到问号《?》这个位置听一些朋友说只...
比如说返回元素个数为 4 ,想把它作为 jsp 页面table 中的<% for(int i=0;i<?;i++){ }%>,的循环条件,请问怎么把4放到问号《?》这个位置 听一些朋友说只能放在脚本里面写一个表了,请问如果我不用那种方法,可以直接在<body>里面解决这个问题吗?
展开
展开全部
ajax的返回值在页面上接收的方法$.ajax({
url: "jian/ExcelByPage",
type: "post",
data:这里是你需要传的参数
cache: false,
beforeSend: function(result) {
},
success: function(json) {
//这里是当ajax成功访问后台后的返回,所调用的方法
一般的接收后台的数据从这里写
var strObj = json.strobj;//这里的strobj是你后台的
//后台JSONObject json = new JSONObject();
//json.accumulate("strobj", strobj);
//HttpServletResponse response = ServletActionContext.getResponse();
//response.setContentType("text/x-json;charset=UTF-8");
//response.setHeader("Cache-Control", "no-cache");
//response.getWriter().print(json.toString());
var len = strObj.length;
for(var i=0;i<len;i++){
//这里写你的页面上需要写的东西
}
}
上面的东西//后面都是后台写的程序,前台的页面上就是没有加//的,希望对你有帮助
url: "jian/ExcelByPage",
type: "post",
data:这里是你需要传的参数
cache: false,
beforeSend: function(result) {
},
success: function(json) {
//这里是当ajax成功访问后台后的返回,所调用的方法
一般的接收后台的数据从这里写
var strObj = json.strobj;//这里的strobj是你后台的
//后台JSONObject json = new JSONObject();
//json.accumulate("strobj", strobj);
//HttpServletResponse response = ServletActionContext.getResponse();
//response.setContentType("text/x-json;charset=UTF-8");
//response.setHeader("Cache-Control", "no-cache");
//response.getWriter().print(json.toString());
var len = strObj.length;
for(var i=0;i<len;i++){
//这里写你的页面上需要写的东西
}
}
上面的东西//后面都是后台写的程序,前台的页面上就是没有加//的,希望对你有帮助
更多追问追答
追问
谢谢你的回答,不过你好像没弄懂我的意思,我意思是:
在javascript中 len 已经得到,我想把它作为以下循环的条件
//这里len怎么得到?
追答
哦,是这样啊,如果是这样的话,我认为你不要用ajax,一般的ajax有返回值的写法都是我上面提供的那种,其他的方法在下能力有限,就不知道了,如果你不用ajax的话,就是刷新页面的方法,和你选择无刷新的有出入,如果是刷新页面的方法倒是可以实现你的for循环,可是页面就刷新了,所以具体的要什么方法还需楼主自己定夺
参考资料: 自己
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你返回的元素值,你用一个值接收 ,比如: var num=4,在for循环里面i<<%=num%>
追问
如果按照你这样做,在jsp页面中就是这样 ; i ++)%> ,这样不行的,里面不能嵌套呀。我试过了。还有一点就是:在javascript中定义的变量num好像在表中不能用这样取到啊,我也试过了。
追答
有个办法,估计就是有点麻烦,首先:你在页面定义一个隐藏域,然后把你通过ajax 返回来的值在javascript 里面用: document.getElementById("num").innerText=?;其中?是你ajax返回的值,在把你这隐藏的值穿到后台存起来,在返回到当前界面,用java脚本取值:String num= request.getParameter(“num”);转化int类型,在传到你的for循环里面。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主的思路有问题,你没有搞明白什么是jsp,在浏览器上显示的页面是不存在jsp代码的,jsp最终是要被编译成html发送给客户端的浏览器,所以js要想跟jsp通信,只能通过服务器端,不能单独在网页上。
jsp只是将服务器端的数据传给浏览器,只要有了这个数据,可以用js来动态的操作html。所以你的for循环完全可以用js来实现
jsp只是将服务器端的数据传给浏览器,只要有了这个数据,可以用js来动态的操作html。所以你的for循环完全可以用js来实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询