RadSearchBox.Focus() doesn't work in Internet Explorer. It works correctly in different browsers (Firefox, Chrome). Attached project shows the problem.
ADD: Property to SearchBox, which displays text if no records are returned.
In certain scenarios time between clicking (focusing ) the SearchBox and being able to interact with it. The issue is iOS7 / Safari specific
Validation is not implemented for RadSearchBox. You can find attached an example that emulates validation of a search box through a dummy textbox and validators attached to that dummy textbox.
Can I advice to extend SearchBox or RadAutoCompleteBox control to write free text and open list box only if I digit a custom char like '@'? I am tinking a control like Post textbox in Facebook or in Twitter where I can digit text and, if I digit '@' char opens a list with all friends o mine. If you want extend more, it will be wonderful if you can associate more than one custom char and each custom char is associated to a different Data source. Example: - '@' to get products - '#' to get Customers - and so on... This SearchBox must can be multiline too. Thanks, Francesco.
When the SearchBox is on the right side of the screen and the dropdown width is larger than the SearchBox width, the dropdown goes outside the viewport: Actual: https://www.screencast.com/t/4SoNcRCj Expected/fixed: https://www.screencast.com/t/smfPgy767M Workaround: <script> function OnClientLoad(sender, args) { sender._dropDown.on({ "reflowed": sender._onReflowed }, sender) } Telerik.Web.UI.RadSearchBox.prototype._onReflowed = function () { var that = this; var $animationContainer = $(that._dropDown._animationContainer); if (that._enableScreenBoundaryDetection) { var availableSpace = that._dropDown._getAvailableSpace(); var tableWidth = $(that._innerWrapElement).outerWidth(); var dropDownWidth = $animationContainer.outerWidth(); var overflow = dropDownWidth - (tableWidth + availableSpace.right); if (overflow > 0) { var left = parseInt($animationContainer.css("left"), 10); var newLeft = Math.max(left - overflow, left - (dropDownWidth - tableWidth)); $animationContainer.css("left", newLeft); } } } </script> <telerik:RadSearchBox runat="server" ID="RadSearchBox1" DataTextField="ShipName" OnClientLoad="OnClientLoad" DropDownSettings-Width="500px" DataValueField="OrderID"> </telerik:RadSearchBox>
Perhaps a simple feature to permit high speed searches in RadSearch is to allow custom SQL Select strings in lieu of direct connect to a SQL Datasource (unless there is a way to accomplish the following in a SQL Datasource)
I have FreeText and text optimization configured/added in SQL Server. This provides a tremendous speed boost for searching strings. Therefore, somehow in the RadSearch box allow searches such as:
SELECT * FROM myTable WHERE contains(myTextIndexedColumn,'this is fast')
SELECT * FROM myTable WHERE FreeText(myTextIndexedColumn,'this is so much faster!')
We are having a touchscreen problem with the RadSearchBox, specifically on the MicroSoft surface touchscreen. I have tested this out on mobile phone and other tablets, but the problem occurs on the Surface.
The issue is that you cannot change the SearchContext, because it never seems to recognize the touch event.
You can touch the SearchContext to initiate the drop-down event, but then it is impossible to select an item from the list.
There are no other problems with Telerik controls on the Surface (the touch events on RadDropDown, RadTabStrip, RadComboBox, RadMenu, etc.) all seem to be working fine.
I want to be able to let a user choose "Landlords", "Tenants", "Owners" and search for a name. The data for the search box comes from different tables.
<asp:SqlDataSource ID="SqlDataSourceTenants" runat="server"
ConnectionString="<%$ ConnectionStrings:ProjectConnectionString %>"
SelectCommand="SELECT Id,TenantEntityName as EntityName FROM TenantEntities"></asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSourceLandlords" runat="server"
ConnectionString="<%$ ConnectionStrings:ProjectConnectionString %>"
SelectCommand="SELECT Id, LandlordEntityName as EntityName FROM LandlordEntities"></asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSourceOwners" runat="server"
ConnectionString="<%$ ConnectionStrings:ProjectConnectionString %>"
SelectCommand="SELECT Id,OwnerEntityName As EntityName FROM OwnerEntities"></asp:SqlDataSource>
I would like to set the DatasourceId on the RadSearchBox to one of the above when the SearchContext changes. I have worked out how to get the selected searchcontext text via an Ajax Request.
function OnClientLoad(sender, args) {
var context = sender.get_searchContext();
var $ = $telerik.$;
$(context).on({
"selectedIndexChanged": function (event) {
var searchbox = $find("<%=RadSearchBox1.ClientID%>");
// this is the search context dropdown selectedIndexChanged event handler
var ajaxManager = $find("<%=RadAjaxManager1.ClientID%>");
ajaxManager.ajaxRequest(context.get_selectedItem().get_text());
}
});
}
I cannot work out how to change the datasource at runtime (I get datasource not found when I run the following code).
Protected Sub RadAjaxManager1_OnAjaxRequest(sender As Object, e As AjaxRequestEventArgs)
if not isnothing(radsearchbox1.datasource)
select Case e.Argument
Case "Tenants"
RadSearchBox1.DataSource = sqldatasourcetenants
RadSearchBox1.databind
Case "Landlords"
RadSearchBox1.DataSource = sqldatasourcelandlords
RadSearchBox1.databind
Case "Owners"
RadSearchBox1.DataSource = sqldatasourceowners
RadSearchBox1.databind
End Select
End If
End Sub
In the OnSearch Event I just need to get the type of entity (which I could get from checking the Id of the bound datasource) and the Id of the entity:
Protected Sub RadSearchBox1_OnSearch(sender As Object, e As SearchBoxEventArgs)
If e.DataItem IsNot Nothing Then
Dim dataItem = DirectCast(e.DataItem, Dictionary(Of String, Object))
Dim thisId As String = dataItem("Id").ToString()
Dim thisEntityName As String = dataItem("EntityName").ToString()
' Lookup in database and redirect to the relevant data view / edit page
End If
End Sub
Surely this is a common request and deserves consideration?
Hi,
We are using SearchBox to search for patients. After entering some texts when we hit ENTER key it should submit and search.
It works fine when we use the main ENTER key but when we hit the numpad ENTER key it doesn't work as it should.
In fact it opens edit patient dialog.
I checked the demo here in your site and here also I noticed that the main ENTER key works but when you hit Numpad ENTER key it doesn't
https://demos.telerik.com/aspnet-ajax/searchbox/examples/overview/defaultcs.aspx
Thank You