将一个数组从Java(JSP)传递给jQuery
Passing an array from Java (JSP) to jQuery
我知道如何在用Java编写的程序中使用$.each像这个
$.each( ['a','b','c'], function(i, l){
alert( "Index #" + i + ": " + l );
});
如果我想把arraylist或字符串数组从我的java程序传递给JQuery,谁知道怎么做呢??
我写了
String[] arr1=new String[2];
arr1[1]="whatever";
arr1[2]="ksj";
$.each( arr1, function(i, l){
alert( "Index #" + i + ": " + l );
}
但它不起作用?
更新::我有一个jsp页面,其中包含java的一部分,如下所示:
<%@page import="java.lang.reflect.Array"%>
<%@page import="java.util.ArrayList"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<style>
.highlight { background-color: yellow }
</style>
</head>
<body>
<h1>Hello World!</h1>
<% ArrayList wordslist = new ArrayList();
wordslist.add("Hello");
wordslist.add("again");
String[] arr1=new String[wordslist.size()];
for (int i=0; i<wordslist.size();i++)
{
arr1[i]=wordslist.get(i).toString();
}%>
<a href="http://jquery.com/">jQuery</a>
<p> Hello again and again</p>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script src="jquery.highlight-3.js"></script>
<script>
$(document).ready(function(){
alert( arr1 );
var arr=new Array();
arr.
$.each( arr, function(i, l){
alert( "Index #" + i + ": " + l );
}
)
});
</script>
</body>
</html>
问题是wordslist arry是动态的,我想把它传递给JQuery??我如何在不使用内联嵌入式java的情况下做到这一点请帮助有没有方法将wordslist传递到Jquery中的arr数组!!!这真的让我很失望!!
使用Java的JSON库。然后将ArrayList
序列化为JSON:
ArrayList wordslist = new ArrayList();
wordslist.add("Hello");
wordslist.add("again");
String json = (new JSONArray(wordslist)).toString();
在JavaScript代码的适当位置回显JSON文本。例如
$(document).ready(function(){
var arr = <%= json %>;
$.each( arr, function(i, l){
alert( "Index #" + i + ": " + l );
});
});
实际上,我不确定这是否是打印变量的正确JSP语法。如果没有,请更正。
首先,您的代码格式错误。你错过了最后一点。其次,索引是以零为基础的。第三,您创建的数组错误。
var arr1 = new Array();
arr1[0]="whatever";
arr1[1]="ksj";
$.each( arr1, function(i, l){
alert( "Index #" + i + ": " + l );
}); //Missed the );
总的来说,我建议在使用jQuery时编写JavaScript而不是Java。只是一个提示。:)
Javascript变量没有用类型声明,并且不能要求String数组,因为Javascript只有一种数组,它可以容纳任何东西。此外,确保你的括号平衡。最后,Javascript中的数组索引从0开始,就像在大多数其他编程语言中一样(包括Java,你似乎对它感到困惑——但Java和Javascript彼此无关,尽管它们有名字)。
var arr1 = [];
arr1[0]="whatever";
arr1[1]="ksj";
$.each( arr1, function(i, l){
alert( "Index #" + i + ": " + l );
});
相关文章:
- $().单击需要按两次.Jquery JSP
- JSP AJAX jQuery填充表问题
- 如何使用 JavaScript/jQuery 将 XML 文件加载到 JSP/HTML 页面
- 如何在tomcat中只使用jsp和javascript/ajax/jQuery而不使用php时实现跨域访问
- 使用jQuery在jsp中分页不起作用
- jQuery点击函数不适用于jsp
- JSP和jQuery-向可变数量的元素添加onclick函数
- 无法让jQuery插件timepicker在jsp页面中工作
- 正在获取父<tr>在struts2 jsp页面中使用jquery的表的索引值
- 使用JSP生成的Minify jQuery
- 将数据从JSP传递到jQuery并在Highcharts中绘制
- 使用 href=“#” JQuery 工作,但使用 href=“page.jsp” 不起作用
- 使用 jquery 将 JSON 数组从 jsp 传递到 javascript
- 提交 jquery 后删除表单 (JSP&Servlet)
- 如何使用 jquery 遍历我的 JSP 响应
- 使用 Jquery/AJAX 通过 JSP 页面中的 Linux 绝对路径显示文本文件内容
- 在 JSP 中包括 JQuery 文件混淆
- 另一个 JSP(也使用 jQuery)中的 JSP(使用 jQuery)出现问题
- Spring MVC JSP Jquery调用控制器方法上的按钮点击后重定向错误
- JSP + JQuery UI 选择菜单 + 默认文本