如何在javascript中获取从Action中传送过来的一个List集合中的某一个值呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在javascript中获取从Action中传送过来的一个List集合中的某一个值呢?相关的知识,希望对你有一定的参考价值。

Action中绑定了一个List集合,我现在想在jsp页面的javascript脚本中获取这个List集合中的值到一个数组当中,请问该如何获取呢。具体的代码给下,谢谢

没有现成的java或jsp等的标签完成从java到js的代码转换,只能手动转。如下。
以下部分是伪代码(jsp有段时间没用了):
<jsp>
//这里假设list是中放的是String
String arrayStr = "[";
for(list)
array += list[i]+",";

arrayStr += "]";
</jsp>
<javascript>
var array = eval(<jsp>write(arrayStr);</jsp>);
</javascript>
参考技术A 一般说来,在WEB应用中前端js想获取后端(这里可以对应为你问题中的Action)数据主要有两种方式,
一种是后端处理完成之后写到页面中,jsp中体现为赋值给一个字符串,这种@donglehui 的回答已经比较详细了
另一种是前端通过发送ajax请求,以jquery为例
<javascript>
//url对应你的action访问链接,data为action的输出
$.get(url,params,function(data)
//deal data
)</javascript>

这里可以补充一句的是前端后端的数据交互格式最常见的是json, 另外还有xml,当然你自己定义个字段串格式交互也可以。一般推荐用json, js中可以直接拿来当对象处理本回答被提问者和网友采纳
参考技术B 用ajax获取

如何用jquery中获取超链接中传的值

比如 <a href="login.html?id=11">登陆<a> 点击事件在JS中已经绑定 所以如何在JS中获取id=11 啊 最好是用Jquery。

直接用javascript吧,先获取标签a的href,这个楼主应该会吧,再用js里面的一个对象String的方法split,该方法是将字符串切割,返回字符串数组。例:href装在var h;里面,var strs=h.split("?"); 然后var str=strs[1];
此时str里面装的就是id=11,再截取一次即可,var ids=str.split("="); var id=ids[1];这样,id里面装的就是11了。
该方法可以取到传递的多个参数及其对应值,例如前面的var str=strs[1];装了所有的参数及其值用&分割,得到的数组里,每个都记录了一个参数及其相应值
楼主觉得如何?
参考技术A 这个js都有这功能:
window.location.href:设置或获取整个 URL 为字符串
window.location.pathname:设置或获取对象指定的文件名或路径
window.location.search:设置或获取 href 属性中跟在问号后面的部分
要获取变量的值可以试试:
var urlParam= window.location.search;
var loc = urlParam.substring(urlParam.lastIndexOf('=')+1, urlParam.length);
如果是多个参数可以分布切割,得到多个键值对。
希望可以帮到你。
参考技术B

Jquery获取url参数值的方法如下:

<script type='text/javascript'>   
$(document).ready(function()  
    // 访问该页面时,在url末尾添加?picid=8  
    console.log(window.location.href);  
    console.log($.getUrlParam('picid'));  
    console.log(getUrlParam('picid'));  
);  
  
function getUrlParam(name)  
    //构造一个含有目标参数的正则表达式对象  
    var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");  
    //匹配目标参数  
    var r = window.location.search.substr(1).match(reg);  
    //返回参数值  
    if (r!=null) return unescape(r[2]);  
    return null;  
  
</script>

希望可以帮助到您,谢谢

参考技术C

jquery 获取超链接的值其实有一个很简单的方法

$.query.get("id");//得到url?后的参数的值

以上是关于如何在javascript中获取从Action中传送过来的一个List集合中的某一个值呢?的主要内容,如果未能解决你的问题,请参考以下文章

jsp页面像action中传值问题,需要传递一个map

struts2中的sessionrequest 和action往页面中传值的方法

http地址中如何加参数and传递form表单中的参数

如何在javascript中从控制器(MVC)获取布尔值?

JSP中传值事件

如何从 Ajax 或 JavaScript 调用 Struts1 Action?