删除字符时,jQuery自动完成不会停止加载数据

时间:2012-07-27 10:52:29

标签: jquery asp.net-mvc-3 autocomplete

我在MVC3中使用jQuery的自动完成和远程数据源。我在控制器中有这样的动作:

public ActionResult AutoCompleteSource(string term)
{
    var result = // load some values filtered by term
    return Json(result, JsonRequestBehavior.AllowGet);
}

在cshtml中,我使用自动完成,如下所示:

var dataSource = '@Url.Action("AutoCompleteSource", "someControllerName");
$("#inputId").autocomplete(
    {
        minLength: 2,
        source: dataSource
    });

这样可以在用户更改输入文本框中的内容时始终重新加载dataSource。

当输入2个字符时,它会加载一些东西。在重新加载期间,用户键入第三个字符,因此它停止仅使用两个字符重新加载操作,并重新开始使用三个字符重新加载。

问题如下:当用户输入两个字符时,它会加载一些东西。在加载过程中,用户删除了一个字符,所以现在它实际上应该停止重新加载dataSource,因为只有一个字符,自动完成应该停止工作。但它没有,它继续加载两个字符的术语并显示结果,即使用户删除了一个字符,所以实际上它应该什么都不显示。

您是否也遇到过这种行为,我该怎么办呢?

0 个答案:

没有答案