jsバージョンdojo autocomplateを使用して作業バージョンを取得できましたが、MVCバージョンを使用して動作する必要があります。下記の提案と私はなっていたのjsエラーを処分したカップルより多くの項目を変更するように私は、コントローラにDataSourceRequest
を追加しました:kendo-ui mvc autocompleteに結果が表示されない
//Fixed, added the schema definition
Uncaught TypeError: e.slice is not a function
(下記)、スピナーが停止して結果が表示されないため、配線が終了しません。
{
"Data": [{
"EmployeeId": 2147483649,
"EmployeeName": "Emily F Johnston",
"Rating": 75.0,
"LastAudited": null
}, {
"EmployeeId": 2147483687,
"EmployeeName": "Joshua Smith",
"Rating": 80.2,
"LastAudited": null
}, {
"EmployeeId": 2147483656,
"EmployeeName": "Thomas F Dunn",
"Rating": 45.0,
"LastAudited": "\/Date(1463893200000)\/"
}, {
"EmployeeId": 2147483660,
"EmployeeName": "Marjon Christine Marik",
"Rating": 88.0,
"LastAudited": null
}],
"Total": 4,
"AggregateResults": null,
"Errors": null
}
コントローラ:オートコンプリート定義
[HttpPost]
public ActionResult EmployeeLookup(string text, [DataSourceRequest] DataSourceRequest request)
{
var filter = request?.Filters.FirstOrDefault() as FilterDescriptor;
var search = string.Empty;
if (filter != null)
{
search = filter.Value?.ToString() ?? string.Empty;
}
var employees = new List<EmployeeLookupResultEntryViewModel>();
var results = _employeeService.EmployeeLookup(search);
if (results == null)
return Json(employees.ToDataSourceResult(request));
return Json(results.ToDataSourceResult(request));
}
:また
、私はTelerikからこのDOCOを見つけた私のユースケースTelerik Custom Templateに非常によく似ていますが、それはそうコントローラメソッドを示す欠けています彼らがどのように配線しているかを確認することはできません。
@(Html.Kendo().AutoComplete()
.Name("Employees")
.DataTextField("EmployeeName")
.Placeholder("Search Employee")
.Filter("contains")
.IgnoreCase(true)
.MinLength(3)
.Delay(300)
.HighlightFirst(true)
.HtmlAttributes(new { style = "width:100%" })
.NoDataTemplate("Employee Not Found")
.DataSource(dataSource =>
{
dataSource.Custom()
.ServerFiltering(true)
.Type("aspnetmvc-ajax")
.Transport(transport =>
{
transport.Read("EmployeeLookup", "Employee", new {area = "Client"});
})
.Schema(schema => {schema.Data("Data");});
})
.HeaderTemplate("<div style=\"width: 400px;\" class=\"dropdown-header k-widget k-header\">" +
"<span>Id</span>" +
"<span>Name</span>" +
"<span>Pwc Rating" +
"<span>Last Audited</span>" +
"</div>")
.Template("<span style=\"width: 50px;\">#: data.EmployeeId #</span><span class=\"cell\">#: data.EmployeeName #</span><span class=\"cell\">#: data.PwcRating #</span><span class=\"cell\">#: data.LastAudited #</span>")
)
JSON/datasouceが...同様にどのようなドキュメントの状態に、返送されて、まだウィジェットはそれを配線することができないので、私は、HTMLのいくつかのコンフィグ設定が欠落しているように見えます。
おかげオプションではありません。私は後になっているようなtelerikリンクを見つけましたが、コントローラを提供していないので、ルックアップの配線方法を確認する必要があります。私はサーバー側のフィルタリング設定を削除しましたが、それだけでは不十分です。あなたの提案を実装しようとします。 –
私はDataSourceRequestを実装しました。フィルタ値が通過するのを見ることができ、応答は期待どおりですが、スピナーは決して止まらず、示唆された値は表示されません(jsエラーもありません)。 –