1

我对 Javascript 和 Ajax 和 DWR 比较陌生 - 我怀疑这是一个 Javascript 问题,而不是 Ajax/DWR,但这里有:

我正在编写使用 DWR 调用远程 Java 方法来验证在浏览器中输入的一些数据的 Javascript。如果验证失败(Java 方法返回错误消息(非空字符串),我想向用户显示错误消息并且不再进行 Javascript 处理。如果验证成功(Java 方法返回空字符串)我想继续在我的 Javascript 中处理用户的输入。

我发现在验证错误时,会显示错误消息,但 Javascript 处理不会停止,它会继续,就好像验证成功一样。所以我的问题是当验证失败时如何结束Javascript处理(下面代码中的'A:')。

这是 Javascript 和伪代码的混合,但它应该说明我在做什么。

谢谢你的帮助,

史蒂夫

MyRemoteService.validateData(myData, {
    callback:function(str) { 
        if (str) {
        // A: show an error message
            return;
        }                           
    }
    });


// pseudocode - this is what I want to happen:

if (validation error)
    //    don't do anything else
}

// Data was valid  - continue to do stuff
4

2 回答 2

3

使 DWR 调用同步解决了这个问题:

MyRemoteService.validateData(myData, {
   async: false,
   callback:function(str) { 
        if (str) {
        // A: show an error message
            return;
        }                           
    }
    });
于 2011-04-08T15:01:44.113 回答
0

据我了解你的帖子,

你想执行一些java脚本代码,只有在你从后端获得结果之后,如果它的成功或错误消息!(我是对的还是遗漏了什么)

如果是这样,请在 dwr 回调函数中编写您的 javascript 代码。因此,只有在结果来自后端后,它们才会被调用。

于 2011-04-12T15:40:28.960 回答