我有一个java类'find',它有一个函数'getValues',它返回字符串数组。
我想从jQuery调用该函数getValue()并将其转换为jQuery数组。
任何人都可以帮我解决这个问题吗?
这是我的java代码:
public class search {
int val;
public search(){
val=0;
}
public String getValue(String s){
String ret="";
for(int i=0;i<5;i++)
{
ret += "S"+val+" ";
val++;
}
return ret;
}
}
这是jsp:
<html>
<head>
<%@ page language="java" import="search.*"%>
</head>
<body>
<%
search sh = new search();
%>
<script type="text/javascript">
$(document).ready(function() {
$("#search").keypress(function() {
var queries = <%=sh.getValue()%>; // I am not getting any value here
alert(queries);
});
});
</script>
<form action="">
<table>
<tr>
<td> Search: </td> <td> <input type=text name=search id="search" value=""/></td>
</tr>
</table>
</form>
答案 0 :(得分:1)
无法在javascript或jquery中调用Java代码。可以使用scriplets在HTML正文中调用它们。看看这个可以帮助你更好地理解。
Calling Java inside JavaScript Function
我建议从Java类中获取值并将其设置为隐藏字段,如下所示:
<input type="hidden" id="hidden1" value="<%=sh.getValue()%>">
然后在你的jquery中使用这个字段值来引用id或者什么。
答案 1 :(得分:0)
您是否尝试在引号内使用scriptlet?
像
var queries = "<%=sh.getValue()%>";
或
var queries = '<%=sh.getValue()%>';