How to make grid not load data when first time go to the page? Because I have some filter condition before load data,Now when I first go to the page,It load all data to me without filter because my filter condition is null as user have not set the filtercondition
4 Answers, 1 is accepted
0
Holger
Top achievements
Rank 1
answered on 13 Apr 2013, 04:50 PM
PEIYANG
commented on 14 Apr 2013, 06:18 AM
Top achievements
Rank 1
Thanks Holger ,in the grid I know how to read the grid:
@(Html.Kendo().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.ProductName);
})
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Products_Read", "Grid"))
)
)
But as the way you said,I don't know how to write them in JS? I have give the datasource as Model and autoBind=false in the grid, Can you give me a example,I write below,It seems wrong.
dataSource.read(("Products_Read", "Grid"))); //action ,control
@(Html.Kendo().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.ProductName);
})
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Products_Read", "Grid"))
)
)
But as the way you said,I don't know how to write them in JS? I have give the datasource as Model and autoBind=false in the grid, Can you give me a example,I write below,It seems wrong.
dataSource.read(("Products_Read", "Grid"))); //action ,control
0
Holger
Top achievements
Rank 1
answered on 14 Apr 2013, 04:53 PM
Hi,
Since I'm not using the ASP.NET MVC wrappers I have no knowledge about these. But after a look into the documention it seems the AutoBind configuration is also available in the wrapper.
I don't know how to access the grid's datasource in the MVC wrapper, but in JavaScript you will do it like this:
Since I'm not using the ASP.NET MVC wrappers I have no knowledge about these. But after a look into the documention it seems the AutoBind configuration is also available in the wrapper.
I don't know how to access the grid's datasource in the MVC wrapper, but in JavaScript you will do it like this:
var
grid = $(
'#grid'
).data(
'kendoGrid'
);
grid.dataSource.read();
0
Hello PEIYANG,
You can find more details in Grid MVC wrapper overview topic.
Regards,
Nikolay Rusev
the Telerik team
Indeed there is a AutoBind setting in MVC wrappers/as linked in Holger's post/ and it will prevent initial ajax call to the server.
In order to obtain reference to Grid client object you must use the id defined in the Name configuration setting:
@(Html.Kendo().Grid(Model)
.Name(
"Grid"
)
.....
//reference to above **Grid**
var
grid = $(
"#Grid"
).data(
"kendoGrid"
);
grid.dataSource.read();
You can find more details in Grid MVC wrapper overview topic.
Regards,
Nikolay Rusev
the Telerik team
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!
0
Hello Stewart,
This thread is 3 years old and seem like it is not directly related to your question. Please consider opening a new one thread with your issue described. Providing an isolated runnable example will also helps us assist you.
Regards,Nikolay Rusev
Telerik by Progress
Try our brand new, jQuery-free Angular 2 components built from ground-up which
deliver the business app essential building blocks - a grid component,
data visualization (charts) and form elements.
I have a similar situation but slightly different:
I have a datasource that loads a list of items for a dropdownlist. I then have a dropdownlist that is constructed on the fly in an editor function for a grid column. Each time I activate the editor, the datasource makes an ajax request to the server to load the data for the dropdownlist. I tried adding the autoBind=false attribute to the editor (see code below) but it STILL makes an ajax call to the server to reload the data for the dropdownlist. I want to be able to load the data source once and not have it reload on each activation of the editor but the autoBind does not seem to work in my case.
$('<input data-text-field="displayfield" data-value-field="valuefield" data-bind="value:' + options.field + '"/>')
.appendTo(container)
.kendoDropDownList({
dataSource: dsLookupCompany,
autoBind: false
});
--Stewart McGuire