jquery ui自动完成检索的项目数

时间:2011-10-26 15:40:44

标签: jquery-ui jquery-ui-autocomplete

使用jquery ui autocomplete我需要知道调用服务器后检索的项目数。

这是我的自动填充

    $("#descripcionArticuloEditandoTextBox").autocomplete({
        autoFocus: true,
        minLength: 3,
        source: '@Url.Action("ObtenerArticulos", "Articulo")',
        select: function (event, ui) {
            articuloModelo = cargarArticulo(ui.item.Id);
            articuloSeleccionado();
        }
    });

我在哪里以及如何获得物品数量和/或物品集合?

提前致谢

2 个答案:

答案 0 :(得分:0)

您应该能够使用自动完成的响应事件,该事件在搜索之后但在显示结果之前触发。

根据文档, ui.content 包含结果,可以修改以更改将显示的结果。

请参阅:http://wiki.jqueryui.com/w/page/12137709/Autocomplete

答案 1 :(得分:0)

目前没有内置方法可以执行此操作,但您可以为source选项提供函数并手动执行AJAX请求:

$("#descripcionArticuloEditandoTextBox").autocomplete({
    autoFocus: true,
    minLength: 3,
    source: function (request, response) {
        $.ajax({
            url: '@Url.Action("ObtenerArticulos", "Articulo")',
            data: request,
            dataType: "json",
            success: function(data) {
                // Do things with data.length here
                response(data);
            },
            error: function() {
                response([]);
            }
        });    
    },
    select: function (event, ui) {
        articuloModelo = cargarArticulo(ui.item.Id);
        articuloSeleccionado();
    }
});

在AJAX请求的success回调中,您可以使用data.length执行任何操作。