我有基本的剑道网格和文本输入框。我只是想在单击#searchButton后将框中的内容传递给传输读取。我就是这样做的。警报显示值已存在,但未在" id"在阅读网格。我究竟做错了什么?
$("#searchButton").on("click", function () {
alert($("#searchCriteria").val());
$($asGrid).data('kendoGrid').dataSource.read();
});
var asGridDataSource = new kendo.data.DataSource({
transport: {
read: {
url: "/api/securitiesapi",
data: {
id: $("#searchCriteria").val()
}
}
},
schema: {
model: {
id: "ID",
fields: {
CUSIP: { editable: false },
SecurityType: { editable: false },
PoolNumber: { editable: false },
PoolPrefix: { editable: false },
IssueDate: { editable: false },
MaturityDate: { editable: false },
OriginalBalance: { editable: false },
}
}
}
});
直接来自网格的Kendo doc页面:
read: {
url: "http://demos.telerik.com/kendo-ui/service/twitter/search",
dataType: "jsonp", // "jsonp" is required for cross-domain requests; use "json" for same-domain requests
data: {
q: $("#search").val() // send the value of the #search input to the remote service
}
}
我基本上做同样的事情,但它不起作用。
答案 0 :(得分:1)
他们的文件错误或误导。为了让它以您想要的方式工作,您应该将数据属性更改为函数,如下所示:
transport: {
read: {
url: "/api/securitiesapi",
data: function() {
return { id: $("#searchCriteria").val() };
}
}
}