使用jQuery-ui自动完成功能显示加载的gif

时间:2018-09-18 14:06:00

标签: jquery-ui datatables jquery-ui-autocomplete

我正在使用 jQuery-ui自动完成版本v1.12.1 。如何添加加载GIF?我正在尝试仅使用jQuery检索数据...没有AJAX调用。

    jQuery(document).ready(function(){
    var product_data = <?php echo $product_implode; ?>;
        if(product_data != ''){
            jQuery( "#search_box" ).autocomplete({
                appendTo: "#project-description",
                minLength: 1,
                source: product_data,
                open: function(e, ui) {
                    jQuery('#project-description').addClass('autocomplete-content');
                },
                close: function(e, ui){
                    jQuery('#project-description').removeClass('autocomplete-content');
                }
            });
        }
    });

这是我的自动完成代码。我正在使用数据表1.10.16 版本来显示数据。我想显示加载程序图像,直到不显示搜索数据。

1 个答案:

答案 0 :(得分:0)

jQuery自动完成功能在加载内容时添加ui-autocomplete-loading类。

在css中添加以下行:

.ui-autocomplete-loading { background:url(http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/images/ui-anim_basic_16x16.gif) no-repeat right center }

编辑:

如@Twisty所说,如果您将所有数据都放在客户端,那么在显示自动完成功能时将没有足够的时间显示正在加载的gif。

因此,您可以使用上述CSS添加以下脚本。参见Demo

setTimeout(function(){
    //logic of fetching data.
}, 1500);

希望,这可以帮助您解决问题。