处理 ajax 请求返回的数据,但在回调函数之外
我有这个代码。
/*
Get the source of the data.
*/
if (if_the_source_is_an_url) {
$.getJSON(url_here, function(returnedData){ theData = returnedData; });
}
/*
Here we have the default processing of theData.
*/
所以我需要,如果用户提供一个网址,返回的数据将被处理,但在回调函数之外,因为我需要重用数据处理代码。所以,我有了这个想法。
- 使用中断命令
$.getJSON(url_here, 函数(返回数据){ theData = 返回数据; break;});
- 更改为 $.ajax 请求,但使用 async: false
只是将数据处理放在 a 中 函数并从
调用它 回调函数。if (url) $.getJSON(url_here, 函数(返回数据){ 自定义函数(返回数据); }); else customFunction(defaultData);
如果这可行的话有什么想法(我没有测试它,因为我不在家),或者有更好的做法吗?
I have this code.
/*
Get the source of the data.
*/
if (if_the_source_is_an_url) {
$.getJSON(url_here, function(returnedData){ theData = returnedData; });
}
/*
Here we have the default processing of theData.
*/
So i need that if the user provides an url, the retured data will be processed but outside of the callback function, becouse i need to reuse the data processing code. So, i came with this ideas.
- Use the break command
$.getJSON(url_here,
function(returnedData){ theData =
returnedData; break;}); - Change to an $.ajax request but with
async: false just put the data processing inside a
function and call it from the
callback function.if (url) $.getJSON(url_here,
function(returnedData){
customFunction(returnedData); });
else customFunction(defaultData);
Any ideas if this will work (i did not tested it becouse im not at home), or are there better practices for this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 jQuery.ajaxComplete 附加处理程序/函数来过滤/转换/等您的数据。所有 ajax 请求都将调用您在此处附加的句柄
Attach handlers/functions using jQuery.ajaxComplete to filter/transform/etc your data. The handles your attach here will be called for all of your ajax requests