My client is concerned that his users aren't very technical and the Rad Grid column filtering is a bit overwhelming for many of them. He would like for the "Contains" filter to be applied when automatically when they type a phrase into the TextBox and hit "Enter". Any ideas if and how I can do this?
Thanks
Steve
Thanks
Steve
4 Answers, 1 is accepted
1
Accepted

Jayesh Goyani
Top achievements
Rank 2
answered on 09 Feb 2013, 02:31 PM
Hello,
Please try with below code snippet.
Thanks,
Jayesh Goyani
Please try with below code snippet.
<
telerik:GridBoundColumn
DataField
=
"Name"
UniqueName
=
"Name"
HeaderText
=
"Name"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
ShowFilterIcon
=
"false"
>
</
telerik:GridBoundColumn
>
Thanks,
Jayesh Goyani
0

Steven
Top achievements
Rank 1
answered on 13 Apr 2013, 11:04 AM
This worked fine when I was using PostBacks, but I'm revising my code to work with ClientSide web methods. How do I get the grid to fire the ClientSide OnCommand when the user hits the Enter key or clicks the filter button on the client side? Or are there other event(s) I should be hooking to capture these actions? Ideally, hitting enter or clicking the filter button should call my script to reload the grid.
1
Hi Steven,
In case you want to filter only on Enter key, you will need to disable the AutoPostBackOnFilter property of the column and attach an OnClick client side event to the corresponding input element of the generated filter control:
JavaScript:
I hope this will prove helpful. Please give it a try and let me know about the result.
Regards,
Eyup
the Telerik team
In case you want to filter only on Enter key, you will need to disable the AutoPostBackOnFilter property of the column and attach an OnClick client side event to the corresponding input element of the generated filter control:
Copy Code
Copy Code
protected
void
RadGrid1_ItemCreated(
object
sender, GridItemEventArgs e)
{
if
(e.Item
is
GridFilteringItem)
{
GridFilteringItem filterItem = e.Item
as
GridFilteringItem;
TextBox textBox = filterItem[
"ShipName"
].Controls[0]
as
TextBox;
textBox.Attributes.Add(
"onkeypress"
,
"fireFilterCommand('"
+
"ShipName"
+
"','"
+
"Contains"
+
"',this, event)"
);
}
}
Copy Code
Copy Code
function
fireFilterCommand(uniqueName, filterFunction, inputElement, args) {
if
(args.keyCode == 13) {
var
masterTable = $find(
"<%= RadGrid1.ClientID %>"
).get_masterTableView();
masterTable.filter(uniqueName, inputElement.value, filterFunction);
}
}
I hope this will prove helpful. Please give it a try and let me know about the result.
Regards,
Eyup
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0

Shubham
Top achievements
Rank 1
answered on 31 May 2017, 09:19 AM
Thank You,
Very Useful