Solved

ASP.NET (VB) Auto Complete Combo box that populates dynamically from SQL, 2000+ entries

Posted on 2009-07-08
3
597 Views
Last Modified: 2012-05-07
Requirements:
- Autocomplete
- Populated from SQL query
- Over 2000 records, must not slow page load time
- Free (either provide code yourself or link to free component/code)
- VB
0
Comment
Question by:Cerixus
3 Comments
 
LVL 1

Expert Comment

by:SGUDAPAT
ID: 24807763
0
 
LVL 3

Expert Comment

by:Kelevra
ID: 24808303
Hi,
the best way to accomplish this, in my point of view is to use the jQuery's autocomplete:
http://www.pengoworks.com/workshop/jquery/autocomplete.htm

wich takes its data from a xml file.

so you make your Db query create your XML file upon it.

then get this autocomplete linked to this freshly made xml.

Done.
$(function() {

    $.ajax({

        type: "GET",

        url: "dbug.xml",

        dataType: "xml",

        success: function(xml) {
 

            /* Count elements */
 

            var count = jXML.getCount(xml,{"Channel":"channel","Item":"item:has(title)","GUID":"guid[isPermaLink]:lt(3)"});

            alert( count["Channel"] + ", " + count["Item"] + ", " + count["GUID"] );
 

            /* Return objects with a specific attribute */
 

            var attribute = jXML.getAttribute(xml,{"GUID":["guid","isPermaLink",null],"Channel":["channel","id",null]});

            alert( attribute["GUID"] + ", " + attribute["Channel"] );
 

            /* Return objects with a specific attribute value */
 

            var attribute = jXML.getAttribute(xml,{"GUID":["guid","isPermaLink","false"],"Channel":["channel","id","channel_1"]});

            alert( attribute["GUID"] + ", " + attribute["Channel"] );
 

            /* Return a number of objects randomized */
 

            var random = jXML.getRandomObj(xml,{"Title":["item:has(title) > title",null],"URL":["item:has(link) > link",3]});

            for (i = 0; i < random["Title"].length; i++) {

                alert( $(random["Title"][i]).text() );

            }

            for (i = 0; i < random["URL"].length; i++) {

                alert( $(random["URL"][i]).text() );

            }
 

        }

    });

});

Open in new window

0
 
LVL 1

Accepted Solution

by:
Cerixus earned 0 total points
ID: 24918767
Ended up using the Ajax autocomplete extender with a web service as seen in this video: http://www.asp.net/learn/AJAX-videos/video-122.aspx
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
ASP:DataGrid and how to bind to a BoundColumn 8 38
ADO.NET ENTITY DATA MODEL 3 30
Remove greater than sign 3 42
Interview questions for support of a legacy ASP.NET site 4 37
Lots of people ask this question on how to extend the “MembershipProvider” to make use of custom authentication like using existing database or make use of some other way of authentication. Many blogs show you how to extend the membership provider c…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Delivering innovative fully-managed cloud services for mission-critical applications requires expertise in multiple areas plus vision and commitment. Meet a few of the people behind the quality services of Concerto.

914 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now