我有一个.jsp页面,我在其中使用点击JavaScript函数进行进一步验证和其他处理。现在我已经在jsp scriptlets中创建了一个数组,如何在调用submit按钮时调用这个被调用的JavaScript函数?我试过这样的事情:
var jsArray = <%=lineArray%>;
但那并没有成功 事实上,在上面的scriptlet之后,函数没有被调用。那么如何将这个java数组复制到JavaScript数组中呢?
答案 0 :(得分:1)
尝试这样的事情:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
var jsArray = [
<c:forEach var="item" items="${lineArray}">
<c:out value="${item}"/>,
</c:forEach>
];
这将生成javascript数组变量jsArray
并将Java lineArray
值放入其中。如果那就是你需要做的。
答案 1 :(得分:0)
实际上你无法直接将Java对象(服务器)访问“JavaScript”(客户端)。您必须创建服务(Ajax调用)并从服务器获取响应对象........
但你可以这样做......
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
var jsArray = {
<c:forEach items="${employees}" var="employee">
"${employee.id}": {
name:"${employee.employeeName}",
cv:"${employee.employeeCV}",
},
</c:forEach>
}
在Jsp解析后....
var employees = {
"1": {
name:"foo",
cv:"cv1",
},
"2": {
name:"bar",
cv:"cv2",
},
}
然后你可以根据需要修改js对象......
检查以下链接进一步说明....