dwr问题,在线等,马上结贴!!

Java_xhb 2008-12-16 09:27:09
function add(){
RoleManageService.strIsExistRole(document.forms[0].roleId.value,callreturn);
}

function callreturn(data){
alert("aa");
if(data !=""){
alert(data);
} else {
returnpara();
}
}

function returnpara(){
window.returnValue=document.forms[0].roleId.value+':'+document.forms[0].description.value;
window.close();
}
现在出现没有调用的callreturn方法,因为没有输出"aa"信息,如果我这样下面写就可以调用,这是为什么啊
RoleManageService.strIsExistRole(document.forms[0].roleId.value,callreturn);

function callreturn(data){
alert("aa");
if(data !=""){
alert(data);
} else {
returnpara();
}
}
就会调用callreturn方法,而且上面都执行了strIsExistRole并且有返回值,为什么下面能执行callreturn,而上面不能执行callreturn方法呢,在线等,谢谢了.
...全文
127 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
高手快来看看啊.
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
支持的,"调用两次"怎么调用呢?
every888 2008-12-16
  • 打赏
  • 举报
回复
dwr似乎不支持传参回调,你还是调用两次吧
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
牛人快来看一下啊.
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
是这么回事,我在写
RoleManageService.strIsExistRole('11'.value,callreturn);

function callreturn(data){
alert("aa");
if(data !=""){
alert(data);
} else {
returnpara();
}
}
这样的话在页面加载的话会执行的,现在我加了一个按钮,我想点该按钮时候调用add方法,而且确实已经调用了,并且执行了add方法中的
RoleManageService.strIsExistRole(document.forms[0].roleId.value,callreturn); ,我在RoleManageService已经跟到有返回值了,但是没有调用
callreturn方法,因为没有输出提示信息"aa".
zhangshuling 2008-12-16
  • 打赏
  • 举报
回复
你是指的上下代码区别就是把RoleManageService.strIsExistRole(document.forms[0].roleId.value,callreturn);
放在add()里面和不放在任何方法里面吗? 而后者执行正常.... ,那你得看看add方法被调用没?

你的意思不是很清楚
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
高手快来啊.
polimo 2008-12-16
  • 打赏
  • 举报
回复
1、首先确定你的add 方法是否被调用
2、如果1成立,确定你的方法
RoleManageService.strIsExistRole(document.forms[0].roleId.value);
是正确的。
如果上面2个都排除,就断点调试下吧。
congjl2002 2008-12-16
  • 打赏
  • 举报
回复
恭喜楼主,那结贴吧
Java_xhb 2008-12-16
  • 打赏
  • 举报
回复
搞定了,好象是没有返回值就不调用到这里.
jiajiaping 2008-12-16
  • 打赏
  • 举报
回复
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="testAjax.aspx.cs" Inherits="Affiche_testAjax" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="WebServiceAffiche.asmx" />
</Services>
</asp:ScriptManager>
<script language="javascript" type="text/javascript">
//function ADDSubmit()
//{

var status=10;
WebService.Add(status,onsuccess);
function onsuccess(result)
{
alert(result)
if(result==1){
alert("发布成功!");
}
else{
returnpara(result);
}
}

function returnpara(result){
window.returnValue=result
alert(window.returnValue+"OK");
}

//}

</script>
</div>
</form>
</body>
</html>

我这样测试是成功的哦....你应该仔细检查自己的代码哦!
tiger868686 2008-12-16
  • 打赏
  • 举报
回复
if(data !=""){
alert(data);
} else {
returnpara();
}
把这个先去掉,看能不能alert出“aa”,如果不能,说明这里边有问题,还有确保add()方法被调用了
jiajiaping 2008-12-16
  • 打赏
  • 举报
回复
callreturn这个方法应该跟踪一下的

52,782

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧