`

DWR中回调函数怎么传递多个参数的问题?

    博客分类:
  • Dwr
阅读更多

再次使用到了DWR没办法,遇到怎么把多个参数传递到回调函数里面的问题,有点棘手,嘿嘿不过不怕,先找百度,查了半天找到了,嘿嘿,我就先做个记录。

 

function getXMLData(id){
ReadXML.readTestXML(callback);
}

var callback = function callBack(data){

alert(id);
alert(data[id-1].devType);
alert(data[id-1].ipAddress);
alert(data[id-1].serverPort);
alert(data[id-1].username);
alert(data[id-1].password);
}

getXMLData("5");

 

其实这样子的写法,alert(id) 会提示你id未定义的。

 

那么怎么解决呢??

 

function getXMLData(id){
ReadXML.readTestXML(function(data){callback(data,id)});
}

var callback = function callBack(data,id){
alert(id);
alert(data[id-1].devType);
alert(data[id-1].ipAddress);
alert(data[id-1].serverPort);
alert(data[id-1].username);
alert(data[id-1].password);
}

 

 

id 就可以弹出了来了,就这样就可以传递多个参数了,其实后面加上id,name,pwd都可以传递。

 

还有一个问题就是怎么解决在回调函数中把我从服务端取回的数据,取到其他的函数中去使用,

这里你就可以采用拼接字符串的方式,做成一个table 然后放到一个div里面去,但是这个div可以设置成不显示,

然后你就可以通过getElementById()的方式去取到你在回调函数中的数据了。

 

 

function getXMLData(id){
ReadXML.readTestXML(function(data){callback(data,id)});
}

var callback = function callBack(data,id){
if(id!=0){
var table = "<TABLE><TR><TD id=\"type\">"+data[id-1].devType+"</TD></TR>

<TR><TD id='ip'>"+data[id-1].ipAddress+"</TD></TR>

<TR><TD id='port'>"+data[id-1].serverPort+"</TD></TR>

<TR><TD id='user'>"+data[id-1].username+"</TD></TR>

<TR><TD id='pwd'>"+data[id-1].password+"</TD></TR></TABLE>";


document.getElementById("div").innerHTML=table;
document.getElementById("div").style.display='none';
}
}

 

 

function play(){


var ip=document.getElementById("ip").innerHTML;
var username=document.getElementById("user").innerHTML;
var ports=document.getElementById("port").innerHTML;
var pwd=document.getElementById("pwd").innerHTML;
var chan=index;
var type=document.getElementById("type").innerHTML;

 

alert(ip);

alert(username);

alert(ports);

alert(pwd);

alert(chan);

alert(type);


}

 

ok 采用这种方式你就可以取到回调函数中的从服务器端返回的数据了。

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    DWR中文文档DWR

    - 使用DWR提供的回调函数处理响应数据。 8. **学习资源**: - 该中文文档将详细介绍DWR的安装、配置、使用方法以及常见问题的解决,是学习DWR的重要参考资料。 通过深入学习这份DWR中文文档,开发者不仅可以掌握...

    DWR中文文档 (DWR 2.0)

    **8.3 传递额外的数据到回调函数**:除了基本的返回结果外,还可以传递其他数据到回调函数,增强应用程序的功能性和灵活性。 **8.4 从其他URL读取数据**:DWR不仅支持从本地服务器获取数据,还可以跨域调用其他...

    DWR中文文档 ,非常详细

    - **Callback Function**:服务器端方法执行完毕后,通过回调函数处理返回结果。 5. **高级特性**: - **Batching**:批量调用,一次发送多个请求到服务器,减少网络往返次数。 - **Polling**:轮询机制,客户端...

    DWR中文文档(多个电子版)

    - **回调函数**:DWR支持异步调用,可以通过回调函数处理结果或错误。 - **类型转换**:DWR自动处理Java和JavaScript之间的类型转换,简化开发。 5. **DWR案例分析** - **实时数据更新**:例如股票价格、天气...

    dwr的用法解析

    配置与无参数情况相同,但需要在JavaScript中定义接收返回值的回调函数。例如,`callTestMethod2`调用`testMethod2`并传递`callBackFortestMethod2`作为回调函数,此函数将接收到`testMethod2`的返回值。 3. **有...

    dwr 各种调用方法

    如`callTestMethod2`函数中,调用`testMethod2`并传递`callBackFortestMethod2`作为回调函数,当Java方法执行完毕后,`callBackFortestMethod2`会接收到返回的数据。 3. **有简单参数的Java方法调用** 参数的传递...

    Dwr功能案例

    DWR提供了回调函数机制,当服务器响应时,会调用预先定义的JavaScript函数,将结果传递给该函数处理。 3. **JavaBean操作**: DWR可以轻松地与JavaBean进行交互。在服务器端,你可以创建一个JavaBean,包含你需要...

    dwr长连接demo

    在这个例子中,`startListening`函数开启了一个DWR长连接,每隔5秒向服务器发送一次心跳请求,服务器在有新数据时会调用`getNewData`的回调函数,更新页面上的数据显示。 总结来说,DWR长连接是实现Ajax实时通信的...

    dwr 压缩文件 帮助文档

    4. **JavaScript API**:DWR提供了丰富的JavaScript库,如`DWREngine`、`DWRUtil`和`RemoteProxy`等,它们用于初始化DWR引擎、执行远程调用、处理回调函数以及错误处理等。 5. **安全性**:DWR允许用户定义安全策略...

    DWR多文件上传.。。。。。。

    在这个示例中,`uploadFiles`函数收集所有选定的文件,并通过DWR调用服务器端的`uploadFiles`方法。文件是以Blob形式传递的,因此服务器端可以接收到原始的文件数据。 为了优化用户体验,可以考虑使用jQuery或类似...

    DWR中文文档(pdf)

    **5.1 简单的回调函数**:介绍了如何使用DWR的回调函数来进行异步数据交换。 **5.2 调用元数据对象**:通过调用元数据对象来获取服务器端方法的信息,以便客户端动态生成调用代码。 以上是对DWR中文文档的核心知识...

    DWR全面解析.doc

    例如,在JavaScript中,你可以创建一个名为`DwrTime`的实例,然后调用它的`currentlyTime`方法,该方法接受一个字符串参数和一个回调函数。当`currentlyTime`方法在服务器端执行完成并返回结果后,回调函数会被调用...

    DWR与界面开发

    注意回调函数只能有一个参数,就是服务器的返回值,如function(messFromServer),这里messFromServer是该操作在服务器上的返回值.  4.. util.js里面有很多有用的方法,最好熟悉一下.  5.. convert并不是必须的,...

    DWR的配置和传值DWR的配置和传值

    在这个例子中,DWR自动处理了参数的序列化和反序列化,以及异步调用的回调函数。 5. **安全性**: 在生产环境中,确保关闭调试模式,因为公开的调试页面可能暴露敏感信息。同时,你还可以通过DWR的安全特性,如IP...

    dwr操作,直接调用后端,动态局部刷新,回调处理

    在DWR中,当远程方法执行完毕,DWR会自动调用预定义的回调函数,将结果传递给前端。这使得开发者可以方便地处理异步调用的结果,如更新UI或处理错误。回调函数通常包含两个参数:`data`(返回的数据)和`error`...

Global site tag (gtag.js) - Google Analytics