作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将一个字符串数组从 java 传递到 javascript。我怎样才能达到同样的效果。使用 loadUrl,我将 Java String [] 传递给 javascript 函数。 (String[] StringName--> ["hello", "hi"])
但是当我尝试在 javascript 中访问相同内容时
function displayString(StringName) {
for(var i=0;i<StringName.length;i++) {
alert("path : " + StringName[i]);
}
}
我期望长度为 2,因为 Java String[] 中只有 2 个项目。但在 javascript 中它是以字符串的形式出现的。我必须使用什么格式才能将其作为数组获取
最佳答案
我想到了两个想法。您可以使用 jsp 创建一个 javascript 数组,也可以使用 java 数组的分隔符并创建一个字符串,然后在 javascript 中使用该字符串上的 split() 读回。
方法一:
<% String array[] = // is your initialized array %>
<script>
var jsArray = new Array();
<% for(String element:array){
%> jsArray[jsArray.length] = <% element %>
<% } %>
</script>
这应该创建一个可供使用的 Javascript 数组,其中包含 Java 数组中的值。
方法二:(使用#作为分隔符)
<% StringBuilder sb = new StringBuilder();
for(String element:array){
sb.append(element + "#");
}
%>
<script>
var temp = <% sb.toString() %>
var array = temp.split('#');
...
</script>
关于java - 如何将数组从java传递到javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16931350/
我是一名优秀的程序员,十分优秀!