json响应回调加载存储extjs

时间:2013-04-23 14:37:41

标签: json extjs callback store

我有一个JSON商店,可以从PHP脚本加载数据。此脚本调用Web服务,有时会出现一些错误,我需要捕获它们并在我的应用程序中显示它们。 在我的脚本中,当我收到错误时打印此行:

echo '{"success": "false", "error": "'.$res->state->Description.'"}';

在我的应用中,我有此代码加载商店

targheStore.load({
                            params: { targa: searchForm.getValues().targa },
                            callback: function(records, operation, success) {
                                Ext.getBody().dom.style.cursor = "default";
                                if(!success){
                                    $("#message2").slideDown('fast');
                                    setTimeout(function() {
                                        $("#message2").slideUp('medium')
                                    }, 2700);
                                }
                            }

                        });

jQuery代码是从顶部显示消息“No record found”,但我想显示我从json收到的错误消息。

1 个答案:

答案 0 :(得分:1)

操作参数内部是请求和响应对象。使用响应对象,就像任何Ajax响应允许您按照自己的方式处理消息一样。

我建议为处理操作声明一个全局可用的处理程序,以查找JSON.parse(response.responseText).hasOwnProperty(“error”)并以这种方式执行自定义操作。

如果您没有使用JSONP进行通信,您可以将消息填入从HTTP错误代码(400+)返回的原始文本中,并且ajax中的{error:}处理程序将是路由错误的最佳方式。