我目前正在尝试找出 KendoUI。我正在使用版本 2012.1.322。
我有一个简单的字符串数组,List<string>
通过 AJAX 调用以 Web 方法返回给用户。
["name","phone","address","zip"]
当 ListView 绑定列表为空时,我只得到
<ul id="fileAlist" data-role="listview" class="k-widget k-listview"></ul>
.
我很确定这与我的模板错误有关。我必须设置什么而不是${Object}
让它呈现如下:
<ul id="fileAlist" data-role="listview" class="k-widget k-listview">
<li>name</li>
<li>phone</li>
<li>address</li>
<li>zip</li>
</ul>
这是当前代码:
$(document).ready(function () {
$("#fileAlist").kendoListView({
template: "<li>${Object}</li>",
dataSource:
new kendo.data.DataSource({
transport: {
read: {
url: '@Url.Action("GetColumnNames", new {File="A"})',
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8"
}
}
})
});
});
C# 代码(如果您感兴趣)
[HttpGet]
public JsonResult GetColumnNames(string file)
{
if (file == "A")
{
var columns = new List<string>()
{
"name",
"phone",
"address",
"zip"
};
}
return new JsonResult { Data = columns, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
其他一些尝试和失败 以下是我尝试的一些模板想法和返回的结果。显然他们都没有给我我想要的字符串输出。
- 我尝试将模板更改为
template: "<li>${}</li>"
,渲染时我得到<li>undefined</li>
- 我尝试将模板更改为
template: "<li>$.val()</li>"
,渲染时我得到<li>$.val()</li>
- 我尝试将模板更改为
template: "<li>${}.selector</li>"
,渲染时我得到<li>undefined.selector</li>