I am using the RadComboBox to create a custom search tool. The EnableLoadOnDemand works great, but for performance reasons I need it to not search after ever character. Instead I have come up with a solution that only searches when the user presses the down arrow to open the drop down.
Now I would like the same functionality when the user presses the arrow or is typing then presses ENTER. I am having issues having the OnClientTextChanged handler firing every time, so is there an easier way to do this?
Thanks.
<telerik:RadComboBox ID="rcbFleet" runat="server" Text="Enter Vehicle# To Search" Width="100%" HighlightTemplatedItems="true" EnableLoadOnDemand="true" Skin="Default"
OnClientSelectedIndexChanging="HandleEndChanging_rcbFleet"
OnClientDropDownOpening="OnClientDropDownOpening"
OnClientItemsRequesting="OnClientItemsRequesting"
OnClientKeyPressing="KeyPress_Search">
function OnClientDropDownOpening(sender, eventArgs)
{
if (sender.get_text().indexOf("Enter ") == 0) {
sender.set_text(
"")
}
if (sender.get_text().length < 1)
{ eventArgs.set_cancel(
true) }
else if(!eventArgs.get_domEvent())
{ eventArgs.set_cancel(
true) }
else {
requestItems =
true
sender.requestItems(sender.get_text(),
false)
}
}
function OnClientItemsRequesting(sender, eventArgs)
{
sender.hideDropDown()
eventArgs.set_cancel(!requestItems)
}