Click here to Skip to main content
11,634,631 members (75,069 online)
Rate this: bad
good
Please Sign up or sign in to vote.
See more: ASP.NET Ajax jQuery
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"
type = "text/javascript"></script>

this is what i got till now. What is my problem is
1) when i hover over the popup lists using keyboard navigation key it displays items in text box, but when I use mouse it doesn't display in textbox.(?).
2) when i select the list item it gets selected in text box but does not fire text box textchange event.(?).


my aspx

<asp:UpdatePanel ID="up" runat="server"><contenttemplate>
     <asp:HiddenField ID="hfCustomerId" runat="server" />
<asp:Label ID="lblEmpCodeSrch" runat="server" Text="EmpCode" CssClass="label">   
 
  <asp:TextBox ID="txtSearch" runat="server" Width="815px" ToolTip="Enter Employeecode" 
            ontextchanged="txtSearch_TextChanged">
     <asp:Button ID="bttnSearch" runat="server" CssClass="submit" Height="23px" Text="Search" onclick="bttnSearch_Click" />
 </contenttemplate>
Here I tried to explain my question properly. Any help appreciated.
Posted 20-Mar-13 22:44pm
v2
Comments
Sukanta Dey at 8-May-13 5:40am
   
May be you can try the code given below:

$("#txtSearch").live("blur", function (event) {
var autocomplete = $(this).data("autocomplete");
var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex($(this).val()) + "$", "i");
var myInput = $(this);
autocomplete.widget().children(".ui-menu-item").each(function () {
//Check if each autocomplete item is a case-insensitive match on the input
var item = $(this).data("item.autocomplete");
if (matcher.test(item.label || item.value || item)) {
//There was a match, lets stop checking
autocomplete.selectedItem = item;
return;
}
});
//if there was a match trigger the select event on that match
//I would recommend matching the label to the input in the select event
if (autocomplete.selectedItem) {
autocomplete._trigger("select", event, {
item: autocomplete.selectedItem

});
//Do something here

//there was no match, clear the input
} else {
$(this).val('');
selectedManagerId = 0;
}
});

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

$("#txtSearch").live("blur", function (event) {
            var autocomplete = $(this).data("autocomplete");
            var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex($(this).val()) + "$", "i");
            var myInput = $(this);
            autocomplete.widget().children(".ui-menu-item").each(function () {
                //Check if each autocomplete item is a case-insensitive match on the input
                var item = $(this).data("item.autocomplete");
                if (matcher.test(item.label || item.value || item)) {
                    //There was a match, lets stop checking
                    autocomplete.selectedItem = item;
                    return;
                }
            });
            //if there was a match trigger the select event on that match
            //I would recommend matching the label to the input in the select event
            if (autocomplete.selectedItem) {
                autocomplete._trigger("select", event, {
                    item: autocomplete.selectedItem
 
                });
        //Do something here

                //there was no match, clear the input
            } else {
                $(this).val('');
                selectedManagerId = 0;
            }
        });
  Permalink  
Comments
komal Singh Baghel at 8-May-13 7:44am
   
Thanks a lot for long waiting answer.Thanks thanks a lot.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 8,736
1 Sergey Alexandrovich Kryukov 8,359
2 Mika Wendelius 6,845
3 F-ES Sitecore 2,354
4 Suvendu Shekhar Giri 2,205


Advertise | Privacy | Mobile
Web01 | 2.8.150728.1 | Last Updated 8 May 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100