Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript &引用;未捕获类型错误:e.slice不是函数;将json数据传递给“中的视图”;“果园”; public ActionResult分组() { 返回视图(); } 公共操作结果读取([DataSourceRequest]DataSourceRequest请求,字符串文本) { var result=_auto.Table.ToList(),其中(s=>s.Charactres.Contains(text)); 返回Json(result.ToDataSourceResult(request),JsonRequestBehavior.AllowGet); } 查看代码:`在此处输入代码` @模型IEnumerable @{ ViewBag.Title=“分组”; } 分组 客户 @(Html.Kendo().AutoComplete()) .名称(“数据”) .DataTextField(“联系人姓名”) .过滤器(“包含”) .MinLength(3) .HtmlAttributes(新的{style=“width:250px”}) .占位符(“键入客户名称”) .DataSource(source=>source .Custom() //.Group(g=>g.Add(“国家”,类型(字符串))) .运输(运输=>运输 .Read(Read=> { read.Action(“read”,“AutoComplete”) .数据(“非附加数据”); })) .ServerFiltering(true)) ) 附加数据()上的函数{ 返回{ 文本:$(“#数据”).val() }; }_Javascript_Json - Fatal编程技术网

Javascript &引用;未捕获类型错误:e.slice不是函数;将json数据传递给“中的视图”;“果园”; public ActionResult分组() { 返回视图(); } 公共操作结果读取([DataSourceRequest]DataSourceRequest请求,字符串文本) { var result=_auto.Table.ToList(),其中(s=>s.Charactres.Contains(text)); 返回Json(result.ToDataSourceResult(request),JsonRequestBehavior.AllowGet); } 查看代码:`在此处输入代码` @模型IEnumerable @{ ViewBag.Title=“分组”; } 分组 客户 @(Html.Kendo().AutoComplete()) .名称(“数据”) .DataTextField(“联系人姓名”) .过滤器(“包含”) .MinLength(3) .HtmlAttributes(新的{style=“width:250px”}) .占位符(“键入客户名称”) .DataSource(source=>source .Custom() //.Group(g=>g.Add(“国家”,类型(字符串))) .运输(运输=>运输 .Read(Read=> { read.Action(“read”,“AutoComplete”) .数据(“非附加数据”); })) .ServerFiltering(true)) ) 附加数据()上的函数{ 返回{ 文本:$(“#数据”).val() }; }

Javascript &引用;未捕获类型错误:e.slice不是函数;将json数据传递给“中的视图”;“果园”; public ActionResult分组() { 返回视图(); } 公共操作结果读取([DataSourceRequest]DataSourceRequest请求,字符串文本) { var result=_auto.Table.ToList(),其中(s=>s.Charactres.Contains(text)); 返回Json(result.ToDataSourceResult(request),JsonRequestBehavior.AllowGet); } 查看代码:`在此处输入代码` @模型IEnumerable @{ ViewBag.Title=“分组”; } 分组 客户 @(Html.Kendo().AutoComplete()) .名称(“数据”) .DataTextField(“联系人姓名”) .过滤器(“包含”) .MinLength(3) .HtmlAttributes(新的{style=“width:250px”}) .占位符(“键入客户名称”) .DataSource(source=>source .Custom() //.Group(g=>g.Add(“国家”,类型(字符串))) .运输(运输=>运输 .Read(Read=> { read.Action(“read”,“AutoComplete”) .数据(“非附加数据”); })) .ServerFiltering(true)) ) 附加数据()上的函数{ 返回{ 文本:$(“#数据”).val() }; },javascript,json,Javascript,Json,尝试从控制器方法返回结果,而不使用ToDataSourceResult()方法。这似乎是在不将客户机javascript寻找的数组包装到对象中的情况下发送数据 因此,您的控制器返回语句如下所示: public ActionResult Grouping() { return View(); } public ActionResult Read([DataSourceRequest] DataSourceRequest request, s

尝试从控制器方法返回结果,而不使用ToDataSourceResult()方法。这似乎是在不将客户机javascript寻找的数组包装到对象中的情况下发送数据

因此,您的控制器返回语句如下所示:

public ActionResult Grouping()
        {
            return View();
        }

public ActionResult Read([DataSourceRequest] DataSourceRequest request, string text)
        {


            var result = _auto.Table.ToList().Where(s => s.Charactres.Contains(text));

            return Json(result.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);


        }

view code:`enter code here`




@model IEnumerable<Autocomplete.Models.Autocomplete>
@{
    ViewBag.Title = "Grouping";
}

<h2>Grouping</h2>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/jquery.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/kendo.all.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/kendo.aspnetmvc.min.js"></script>
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.common.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.default.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.dataviz.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.mobile.all.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.dataviz.default.min.css" rel="stylesheet" type="text/css" />
<div class="demo-section">
    <h4>Customers</h4>

    @(Html.Kendo().AutoComplete()
              .Name("data")
              .DataTextField("ContactName")
              .Filter("contains")
              .MinLength(3)
              .HtmlAttributes(new { style = "width:250px" })
              .Placeholder("Type a customer name")
              .DataSource(source => source
                  .Custom()
                  //.Group(g => g.Add("Country", typeof(string)))
                  .Transport(transport => transport
                    .Read(read =>
                    {
                        read.Action("Read", "AutoComplete")
                            .Data("onAdditionalData");
                    }))
                .ServerFiltering(true))
    )
</div>
<script>
    function onAdditionalData() {
        return {
            text: $("#data").val()
        };
    }
</script>
我从另一个stackoverflow答案中得到了这个解决方案:

这个解决方案对我有效。
祝你好运

尝试从控制器方法返回结果,而不使用ToDataSourceResult()方法。这似乎是在不将客户机javascript寻找的数组包装到对象中的情况下发送数据

因此,您的控制器返回语句如下所示:

public ActionResult Grouping()
        {
            return View();
        }

public ActionResult Read([DataSourceRequest] DataSourceRequest request, string text)
        {


            var result = _auto.Table.ToList().Where(s => s.Charactres.Contains(text));

            return Json(result.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);


        }

view code:`enter code here`




@model IEnumerable<Autocomplete.Models.Autocomplete>
@{
    ViewBag.Title = "Grouping";
}

<h2>Grouping</h2>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/jquery.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/kendo.all.min.js"></script>
<script src="~/Modules/Autocomplete/Scripts/kendo/2014.3.1119/kendo.aspnetmvc.min.js"></script>
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.common.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.default.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.dataviz.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.mobile.all.min.css" rel="stylesheet" type="text/css" />
<link href="~/Modules/Autocomplete/Content/kendo/2014.3.1119/kendo.dataviz.default.min.css" rel="stylesheet" type="text/css" />
<div class="demo-section">
    <h4>Customers</h4>

    @(Html.Kendo().AutoComplete()
              .Name("data")
              .DataTextField("ContactName")
              .Filter("contains")
              .MinLength(3)
              .HtmlAttributes(new { style = "width:250px" })
              .Placeholder("Type a customer name")
              .DataSource(source => source
                  .Custom()
                  //.Group(g => g.Add("Country", typeof(string)))
                  .Transport(transport => transport
                    .Read(read =>
                    {
                        read.Action("Read", "AutoComplete")
                            .Data("onAdditionalData");
                    }))
                .ServerFiltering(true))
    )
</div>
<script>
    function onAdditionalData() {
        return {
            text: $("#data").val()
        };
    }
</script>
我从另一个stackoverflow答案中得到了这个解决方案:

这个解决方案对我有效。
祝你好运

对我来说,解决方案是将模型(模式)定义为与接收到的数据相同

在我的示例(ASP.NET MVC)中,我使用正确的模式设置了一个自定义数据源:

return Json(result, JsonRequestBehavior.AllowGet);
参考资料:


对我来说,解决方案是将模型(模式)定义为与接收到的数据相同

在我的示例(ASP.NET MVC)中,我使用正确的模式设置了一个自定义数据源:

return Json(result, JsonRequestBehavior.AllowGet);
参考资料:


以下更改对我有效,在
dataSource
之后为
kendoGrid
添加了模式:

.DataTextField("description")
.DataValueField("name")
.DataSource(dataSource => dataSource
    .Custom()
    .Type("aspnetmvc-ajax")
    .ServerPaging(false)
    .ServerSorting(false)
    .ServerFiltering(false)
    .Transport(transport => transport
        .Read(read => read.Action("Get_Users", "User"))
    )
    .Schema(schema => schema
        .Data("Data")
        .Model(model =>
        {
            model.Id("description");
            model.Field("name", typeof(string));
        })
    )
)

以下更改对我有效,在
dataSource
之后为
kendoGrid
添加了模式:

.DataTextField("description")
.DataValueField("name")
.DataSource(dataSource => dataSource
    .Custom()
    .Type("aspnetmvc-ajax")
    .ServerPaging(false)
    .ServerSorting(false)
    .ServerFiltering(false)
    .Transport(transport => transport
        .Read(read => read.Action("Get_Users", "User"))
    )
    .Schema(schema => schema
        .Data("Data")
        .Model(model =>
        {
            model.Id("description");
            model.Field("name", typeof(string));
        })
    )
)