使用jquery自动完成和数据库信息从文本框中完成textarea

时间:2013-04-22 14:19:50

标签: jquery json razor autocomplete textbox

我有这个jquery函数,它可以完美地运行

$(function () {
        function log(message) {
            $("<div>").text(message).prependTo("#log");
            $("#log").scrollTop(0);
        }
        $("#city").autocomplete({
            source: function (request, response) {
                $.ajax({
                    url: "@Url.Action("AutocompleteSuggestions")",
                    dataType: "json",
                    data: request,
                    success: function (data) {
                        response($.map(data, function (item) {
                            return {
                                label: item.CP,
                                value: item.Ville
                            }
                        }));
                    }
                });
            },
            minLength: 5,
            select: function (event, ui) {
                log(ui.item ?
                "Selected: " + ui.item.value + " aka " + ui.item.id :
                "Nothing selected, input was " + this.value);
            }
        });
    });

我从此操作中获取数据库中的数据

public JsonResult AutocompleteSuggestions()
    {
        string searchstring = HttpContext.Request.QueryString["term"];

        Landing2.Data.DataClasses1DataContext db = new Data.DataClasses1DataContext();

        var suggestions = from s in db.TotalCorrespondanceVilleCP
                          select new { s.CP, s.Ville };
        var p = suggestions.Where(n => n.CP.StartsWith(searchstring));

        return Json(p, JsonRequestBehavior.AllowGet);
    }

这是问题,如果我从任何其他json url获取数据,脚本工作。控制器正确发送json数据。但这两个在一起是行不通的。我在某个地方忘了一些参数吗? (抱歉英语不好)

0 个答案:

没有答案