來源:http://www.javaeye.com/topic/200103 作者QQ:252574345 MSN:[email protected]
本文並未提供完整源代碼,請見諒
1、配置dwr.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<dwr>
<allow>
<create creator="new" javascript="status">
<param name="class" value="StatusBusiness"/> //爲DWR實現類
</create>
<convert converter="bean" match=User"> //PO類
</convert>
</allow>
</dwr>
2、DWR類:StatusBusiness類
/**
* 返回select框數據集合
* @param id
* @param action
* @return
*/
public List getSelectList(String id,String action){
//爲文章結構清晰,以下代碼省略
//此list爲PO類user的集合
return list;
}
3、PO類
public class User extends BasePO
{
private String id;
private String name;
//getter and setter
}
4、AJAX:dwr處理
...頁面中
<script>
function initUserGroup(id,selectobj){
var edatasetid="12wsw83ks";
var eaction="action=getUserlist&id="+id;
status.getSelectList(edatasetid,eaction,getListEditx);
function getListEditx(data)
{
if(null!=data&&data.size>0)
{
//清除原select,否則重複對select賦值
optionsClear(selectobj);
for(var i=0;i<data.length;i++)
{
//將回調函數返回的list對象邊歷,循環取出PO類對象user的id和name屬性,放在頁面上對應select裏
selectobj.options[selectobj.options.length] = new Option(data[i].id,data[i].name);
}
}
}
}
<script>
注:
在上面的程序中,我們可以知道改如何處理返回的list集合,並填充select。有個這個思想後,可以到DWR官網去看一下具體的技術實現細節,比如使用最新的dwr提供的util函數該如何獲取input標籤中值等。