1

JQAjaxSetup>>onError 的文档: 说:

onError: anObject "请求失败时调用的函数。该函数传递了三个参数:XMLHttpRequest 对象、描述发生的错误类型的字符串和可选的异常对象(如果发生)。第二个参数的可能值(除了 null)是 'timeout'、'error'、'notmodified' 和 'parsererror'。”

我想使用类似的东西显示错误消息

anAjax onError: ((html jQuery id: someId) before: (MyInstanceOfWAPainter error: 'An error message'));

我怎么做?可能在客户端完成所有操作。

4

3 回答 3

0

根据文档,您可以执行以下操作来显示错误:

onError:function(_XMLHttpRequest, _error) {
 alert(_error);
}
于 2011-04-18T20:33:09.037 回答
0

这个基本想法是:

jQuery ajax onError: (self javascript alert: 'error')

请参阅 JQAjaxTest>>testOnError。

于 2011-04-19T00:11:16.117 回答
0

因为错误发生在客户端并且您可能在此类事件中连接失败,您需要生成完整的 javascript 代码来显示错误(即不向 Seaside 呈现回调)。

下面的代码片段将生成一个带有两个参数的 JS 函数。函数的主体是 jQuery 表达式,它将错误消息(在_error变量内)放在带有 id 的 html dom 元素之前someId

anAjax 
   onError: (((html jQuery id: someId) before: (JSStream on: '_error'))
                           asFunction: #('_XMLHttpRequest' '_error'));

someId就个人而言,如果 id in不是动态生成的,我不会在这里使用 Seaside 的 JS 生成功能。如果它是从 Seaside 内部动态生成的,那么第一个片段可能仍然更容易。

anAjax onError: (JSStream on: 'function(_XMLHttpRequest,_error){
                                  $(''#someId'').before(_error)})
于 2011-04-19T07:28:50.957 回答