Hello Everyone,

Really, this is an amateur question, but I need to ask it anyway.

How do I capture other events in an asp.net textbox on a webpage in more of a way in which a windows app does? For example, if I want to handle when someone just presses a key (keydown) on a textbox in a webpage?

The functionality that we want to create breaks down like this:

  1. We want to create a "smart" search box at the top of our page.
  2. When the user starts typing, a little panel or some element should become visible and it will have some check boxes on it.
  3. They can search for one or many different types of searches: First Name, Last Name, Business Name, ZIP, Customer Number, and Contact Info.
  4. As they begin typing their search, we need it to execute some code that attempts to figure out exactly what they are searching. So if it can tell they are typing in alphabetic characters and not numbers, then we know to NOT check the Customer Number box, but we will want to check the First Name, Last Name, and Business Name boxes. If they start typing a number, we know that we can check the Customer Number box and leave the First Name and Last Name, etc boxes unchecked. If they type a number that is 5 digits, then we know to check the ZIP and Customer Numbers both. Any other length number characters and the ZIP will be unchecked. And any other rules like these that we might want to implement in the future.
  5. The idea here is we will almost always be able to tell what someone is searching, but the user can always check any box that they want to search for if they so choose. For example, if a business is named "123 Plumbing Company" and they just want to search the Business Name field for a number, they can over ride it and do that. Otherwise, they just can blindly type their search and hit enter and the program will usually know what kind of search they are trying to do.


I come from a strong windows app development background and have just recently tried to do some web development professionally. A quick few sentences on what philosophy I am missing out on as far as a more robust and "Windows App-like" webpage would be appreciated if anyone wants to coach me on that area and point me in the right direction!

Also, in my example we are using master pages. So if you can imagine a typical master page that has a logo top left and a search box and button top right, then you can picture what we have. Its simple looking. But with the content page being a separate aspx page, we are having trouble referencing it after a search is performed anyway. So what I mean by all this is

  1. The masterpage.master has a search textbox. They type something, hit enter.
  2. We then want a gridview that is on our default.aspx page to update with the results of the event that was fired from the masterpage.master.


My windows app background tells me to just point to it like I would from two different forms. Like if I had a form1 with a search box on it and I wanted it to show up the results on form2, I would just say Form2.Show: Form2.GridView = whatever.

Of course, with my confusion of what the scope of these asp.net pages is, I am having a difficult time just visualizing everything and how they are inter-related.

So I guess to recap here:
1) How do I tap into more events with textboxes or any other asp.net control. Is the answer AJAX? If so, can you elaborate just a little bit?
2) How would I use the keypress or keydown type of event to make a panel or some kind of content holder to become visible when the textbox gets focus from the cursor and go back to being invisible if it loses focus.
3) What about the scope in which asp.net pages behave?

I hope I haven't fudged up the question too bad. I went ahead and put some screen shots online that might help explain what we are trying to pull off. As the topic subject suggestions, this actually reminds me of what the search box looks like here on vbforums.com except that we want there to be some active code that fires without a postback.



Thanks for your time as always!

Sincerely,
Josh