DWR是Ajax的一個開源框架,可以很方便是實現調用遠程Java類,然後採用回調函數取到返回值,以下是一個利用DWR實現的二級級聯菜單:
package com.test.db;
import java.util.*;
import java.sql.*;
public class ItemsBean {
public ItemsBean() {
}
public Map UserList(String CLASSID)
{
Map reply = new LinkedHashMap();
if(CLASSID==null || CLASSID.equals("") || CLASSID.equals("0"))
{
System.out.println("不能取到classid的值");
}
try
{
1.連接數據庫
stmt = conn.prepareStatement("select id,MC from test where id=?");
stmt.setString(1,CLASSID);
rs=stmt.executeQuery();
while(rs.next())
{
reply.put(rs.getInt("id"),rs.getString("mc"));
//System.out.println(rs.getString("mc"));
}
return reply;
}
}
jsp頁面:
<script src="dwr/interface/ItemsBean.js"></script>
<script src="dwr/engine.js"></script>
<script src="dwr/util.js"></script>
<script language="javascript">
function update2()
{
ItemsBean.UserList(createList2,DWRUtil.getValue("fbpt"));
}
function createList2(data1)
{
DWRUtil.removeAllOptions("xmlb");
DWRUtil.addOptions("xmlb", data1);
}
</script>
<body οnlοad="hideshow();update2()">
..............................
</body>