大佬教程收集整理的这篇文章主要介绍了jquery – 使用getJson方法检查null响应,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个jquery auto complete,它使用我写的一个返回json的web服务.
我需要稍微改变这一点,以便如果带有参数的第一个请求返回null,那么它将再次尝试使用没有参数进行主搜索的默认URl.
只是为了确保我没有错过任何技巧,我说我会问,看看是否有任何jquery大师有一个优雅的方式实现这一点.
var cache = {},lastXhr; var web_service_url_default = "http://json_sample.PHP"; var web_service_url_specific = "http://json_sample.PHP/?param1=Hello¶m2=world"; var autocomp_opt = { minLength: 1,source: function( request,response ) { var term = request.term; if ( term in cache ) { response( cache[ term ] ); return; } lastXhr = $.getJSON( web_service_url_specific,request,function( data,status,xhr ) { cache[ term ] = data; if ( xhr === lastXhr ) { response( data ); } }); } };
这是我自动完成的选项变量,它输入到自动完成调用,如下所示,并且工作正常.
$('@L_911_14@me_class').autocomplete(autocomp_opt);
我需要改变它,以便如果第一个请求返回空,那么它将触发没有参数的默认请求.
一如既往的干杯.
更新了工作示例
完成后,请参阅以下代码,以防它对任何人有帮助.它可能不是最优雅但它无论如何都有效.
请注意,在此示例中并且在测试中,缓存似乎不太好并且导致请求不会一次又一次地被触发,因此我将其删除.现在它100%工作.
var autocomp_opt = { minLength: 1,response ) { var term = request.term; lastXhr = $.getJSON( web_service_url_specific,xhr ) { // check if there is only one entry in the json response and if the value is null,my json script returns empty like this if(data.length == 1 && data[0].value == null){ $.getJSON( $web_service_url_default,xhr ) { response( data ); }); }else{ response( data ); } }); } }; $('@L_911_14@me_class').autocomplete(autocomp_opt);
以上是大佬教程为你收集整理的jquery – 使用getJson方法检查null响应全部内容,希望文章能够帮你解决jquery – 使用getJson方法检查null响应所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。