当响应 JSON 对象数据计数为零时,AJAX 成功回调函数重定向到错误回调
ajax success callback function redirects to error callback when response json object data count is zero
我正在尝试使用 MVC4 API 控制器处理 json 响应,该控制器将对象发送到 jstree 插件,该插件将响应绑定到树中。在这里,响应包含文件夹列表和请求的 httpresponse。响应取决于服务器连接 [将其作为条件之一]。
情况 1:如果服务器连接正常,则响应是带有 httpresponse [200, OK] 的文件夹对象( Remember the folder count may be zero, this is where the problem exist, this has to be the success case and message like no leaf node exist has to be displayed but can also be the case of error as explained in case 2
]。
情况2:当服务器连接不正确时,响应为文件夹对象计数零,这必须在错误回调函数中处理,并将错误消息显示为服务器连接错误。
所以问题是,当服务器连接正常且文件夹对象计数为零时,响应首先转到成功回调,然后转到错误回调,这将显示错误消息作为服务器连接错误,但是我需要显示不存在叶节点。
客户端代码:
var recreateTree = function (model) {
$(#treeview)
.jstree({
"json_data": {
"ajax": {
"url": window.virtualPath + "api/myDirectory/TreeViewNodes/",
"type": "POST",
"data": {},
"success": function (data) {
do something...
},
"error": function (data) {
do something else...
}
}
},
"themes":{......},
..........
}).bind(........binding code.......);
谁能帮我解决?
对不起,我一开始误解了你的问题。
该问题似乎与数据响应的解析有关。
空字符串被视为格式错误的 JSON,并触发错误。
您可以尝试返回"{}"而不是空字符串来解决问题。
相关文章:
- 成功回调永远不会被JSONP请求调用
- 查询后websql成功回调无法访问变量
- 在$q服务中捕获拒绝而不触发成功回调
- 如何从ajax成功回调函数中读取javascript变量
- bookmarklet中的jQuery.getScript()进行回调,但没有成功执行插件
- $http服务未触发成功或错误回调
- 在AJAX中使用window.location.replace'成功'回调
- AJAX成功回调-执行javascript时出现问题
- 当使用命名函数作为jquery ajax成功回调时,我需要括号吗
- jQuery$.post可以在chrome、safari中工作,但不能在FF中工作(声明成功回调函数未定义)
- Yii ajaxbutton : 如何在成功回调函数中获取 $(this)
- 角承诺的“then”函数的成功回调的词汇范围是什么?
- 解析查询.首次成功/错误 间歇性不调用回调
- 承诺中的成功回调不会发生$http
- AJAX内部回调成功
- AJAX 的回调(成功?)函数
- 流星:从服务器回调成功后写入数据库
- 回调成功后,不能将字符串推入数组
- Ajax, post数据但不回调成功
- 如何使循环等待回调成功