以往我对dwr返回对象list的操作都是把其返回的信息设置到select标签上,今天突然碰见一个要求从返回对象的list中分别取出对象的一些属性进行其他操作,一时摸不着头绪,想了半天,再加上baidu,终于大功告成。
当我们把返回对象设置成select中option的做法是:DWRUtil.addOptions('addOptionsObject1', data, "name","value");其中name,value是返回list(在此处相当于data)中对象的两个属性。关于DWRUtil.addOptions();这个的用法有5种,大家不妨去baidu一下。但这5种方法,到现在为止我也没有一一试过,在工作中也只是常用了其中的3种。
我看过的一些文章上总是说,当知道返回的list中对象的属性时可以向下面这样使用:
Function callTestMethod6(){
testClass.testMethod6(callBackFortestMethod6);
}
Function callBackFortestMethod6(data){
//其中date接收方法的返回值
//对于JavaBean返回值,有两种方式处理
//不知道属性名称时,使用如下方法
for(var i=0;i<data.length;i++){
for(var property in data){
alert("property:"+property);
alert(property+":"+data[property]);
}
}
//知道属性名称时,使用如下方法
for(var i=0;i<data.length;i++){
alert(data.name); ................[1]
alert(data.value);
}
}
但是我在象上面这样应用时,总是不成功,不知道为什么。
后来该向下面这样使用就ok。
for(var i = 0; i < data.length; i++){
var bean = data[i];
//分别取得对象的name,value属性
alert(bean.name);
alert(bean.value);
}
在dwr.xml中配置是这样的:
<convert match="test.User"
converter="bean">
//User中还包含有其他属性,在此没有把他们include进来
<param name="include" value="name,value"/>
</convert>
我猜有可能是[1]处的data应该改为data[i]然后再取其属性。
当我们把返回对象设置成select中option的做法是:DWRUtil.addOptions('addOptionsObject1', data, "name","value");其中name,value是返回list(在此处相当于data)中对象的两个属性。关于DWRUtil.addOptions();这个的用法有5种,大家不妨去baidu一下。但这5种方法,到现在为止我也没有一一试过,在工作中也只是常用了其中的3种。
我看过的一些文章上总是说,当知道返回的list中对象的属性时可以向下面这样使用:
Function callTestMethod6(){
testClass.testMethod6(callBackFortestMethod6);
}
Function callBackFortestMethod6(data){
//其中date接收方法的返回值
//对于JavaBean返回值,有两种方式处理
//不知道属性名称时,使用如下方法
for(var i=0;i<data.length;i++){
for(var property in data){
alert("property:"+property);
alert(property+":"+data[property]);
}
}
//知道属性名称时,使用如下方法
for(var i=0;i<data.length;i++){
alert(data.name); ................[1]
alert(data.value);
}
}
但是我在象上面这样应用时,总是不成功,不知道为什么。
后来该向下面这样使用就ok。
for(var i = 0; i < data.length; i++){
var bean = data[i];
//分别取得对象的name,value属性
alert(bean.name);
alert(bean.value);
}
在dwr.xml中配置是这样的:
<convert match="test.User"
converter="bean">
//User中还包含有其他属性,在此没有把他们include进来
<param name="include" value="name,value"/>
</convert>
我猜有可能是[1]处的data应该改为data[i]然后再取其属性。