我有
<input type="text" name="search" id="search" placeholder="Enter search text..." />
<input type="submit" id="btnSearch" name="find" value="" />
和
$(document).ready(function () {
$("#btnSearch").click(function () {
doTheSearch();
});
$("#search").keyup(doTheSearch());
});
和
function doTheSearch() {
alert("");
var grid = $("#Grid").data("kendoGrid");
grid.dataSource.read();
};
我正在使用带有mvc包装器的KendoUI网格,不确定是否相关,但这里也是代码
@(Html.Kendo().Grid<E4.Administrasjon.Models.viewModels.vmUser>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.BrukerID);
columns.Bound(p => p.navn);
})
.DataSource(dataSource => dataSource
.Ajax() // Specify that the data source is of ajax type
.ServerOperation(false)
.Read(read => read.Action("Users_Read", "User")
.Data("searchData")
)
.PageSize(20)
)
.Pageable()
)
问题是当页面加载函数时会触发doTheSearch()。这应该是当我尝试仅在用户输入文本或按下按钮时编码。
答案 0 :(得分:1)
试试这个:
$("#btnSearch").on('click', function () {
doTheSearch();
});
$("#search").on('keyup', doTheSearch);
function doTheSearch() {
alert("x");
}
答案 1 :(得分:1)
您正在调用该函数而不将其绑定到事件,这个:
$("#search").keyup(doTheSearch());
应该是:
$("#search").keyup(doTheSearch);