Dwr的util工具包的使用
MyDwr.java中添加方法
public int add(int a,int b ){
return a+b;
}
<html>
<head>
<title>ch11-dwr</title>
<script type="text/javascript" src="/dwr-first/dwr/engine.js"></script>
<script type="text/javascript" src="/dwr-first/dwr/util.js"> </script>
<script type="text/javascript" src="/dwr-first/dwr/interface/MyDwr.js"></script>
<script type="text/javascript">
function calAdd(){
//getValue(a)方法可以获得页面中id为a的组件中的值,并且获得的值是字符串类型
var a = dwr.util.getValue("a");
var b = dwr.util.getValue("b");
alert(a+","+b);
//可以用js中的parseInt方法将字符串的值转换成整数类型的值,前两个参数为调用方法传递的参数值,后面的方法为回调函数
MyDwr.add(parseInt(a),parseInt(b),function(data){
alert(data);
})
}
//dir中有为下拉选初始化的方法,
function addAddress(){
var a = dwr.util.getValue("addressName");
//通常使用dwr.tuil.addOptions(selectid,map,valueprop,textprop)这个方法
var data = [{id:a,name:a}];
dwr.util.addOptions("address",data,"id","name");
}
function initAddress(){
dwr.util.removeAllOptions("address");
var data = [{id:1,name:"北京"},{id:2,name:"天津"},{id:3,name:"上海"}];
dwr.util.addOptions("address",data,"id","name");
}
function initUser(){
MyDwr.list(
function(data){
//第一个参数是id 第二个参数是一个集合数据,第三个参数是某一个值用来设置每一列的值,第四个参数是是否排除html
dwr.util.addRows("user",data,cellFuncs,{escapeHtil:false});
}
);
}
//第一个是用来设第一列的值
var cellFuncs=[
function(data){return data.id},
function(data){return data.username},
function(data){return data.group.name}
];
</script>
</head>
<body>
<input type="text" id="a" />+<input type="text" id="b" />
<input type="button" value="获取" onclick="calAdd()"/>
<br/>
<select id="address">
</select>
<input type="button" value="初始化地址" onclick="initAddress()"/>
<input type="text" id="addressName" />
<input type="button" value="添加地址" onclick="addAddress()"/>
<table width="600" border="2px">
<thead>
<tr>
<td>ID</td>
<td>username</td>
<td>groupName</td>
</tr>
</thead>
<tbody id="user">
</tbody>
</table>
<input type="button" value="初始化用户" onclick="initUser()"/>
</body>
</html>