如何从jQuery调用java函数?

时间:2013-03-27 08:25:17

标签: java jquery json jsp

我有一个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>

2 个答案:

答案 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()%>';