472,368 Members | 2,518 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,368 software developers and data experts.

MS Ajax.NET extensions - OnTextChanged to OnKeyPress

Hi

I am trying to implement the Microsoft Ajax.NET extensions to perform a
lookup on a key press of a text box.

What this will do is once a user enters a letter into the textbox,
this will filter a list from a database and populate some filtered options
for the user to choose in a seperate listbox.
Any subsequent key presses will further filter this result set.

Now utilising the OnTextChanged property of the textbox, this works
perfectly.
Except you have to tab out of the textbox to trigger the event.

So to make the on key press event work, in my Page_Load i added the
onkeypress attribute to the textbox and specified this to trigger the text
changed event.
tbSearchTerm.Attributes.Add("onkeypress",
Page.ClientScript.GetPostBackEventReference(tbSear chTerm, ""));

Now this kind of seems to work, but has a one character delay.

Example:

action: I enter the character "A" into the textbox.
result: Nothing happens

action: I enter an additional character "B" into the textbox
result: Results for the letter "A" are now returned

action: I enter my third character "C" into the textbox
result: Results for a search for letters "AB" are now returned.

This is causing a most undesirable effect.

How is one supposed to utilise an OnKeyPress action in the AJAX.Net
framework?
This was downloaded from:
http://ajax.asp.net/
And i have been unable to find another solution to this problem.

Any advice would be greatly appreciated

TIA
Mar 25 '07 #1
4 8651
I'm not sure I can be of much more help than sharing some code I made a
long, long time ago; back when it was still "Atlas" - I just scrounged it up
from the archives of my hard drive. So, some things may have changed a bit,
but hopefully this can give you some kind of a head start. I'm sorry, at the
moment I can't do much more due to time restrictions:

I used the AutoCompleteExtender:

<asp:TextBox ID="TextBox_ToLine"
runat="server"></asp:TextBox>
<atlas:AutoCompleteExtender ID="AutoCompleteExtender1"
ServicePath="WebService.asmx"
ServiceMethod="GetToLineSuggestions"
MinimumPrefixLength="3" runat="server">
<atlas:AutoCompleteProperties
TargetControlID="TextBox_ToLine" Enabled="true" />
</atlas:AutoCompleteExtender>

This, like a lot of ASP.Net AJAX, utilizes web services. This is the service
method that I created to handle this:

<WebMethod(EnableSession:=True)_
Public Function GetToLineSuggestions(ByVal prefixText As String, ByVal
count As Int32) As String()
' call into stored procedure code - can't show
End Function

....sorry man, I can't give more than that at the moment.

--
~~~~~~~~~~~
Ben Rush
http://www.ben-rush.net/blog
"Grant Merwitz" <dr********@xbox-360.co.zawrote in message
news:OO**************@TK2MSFTNGP06.phx.gbl...
Hi

I am trying to implement the Microsoft Ajax.NET extensions to perform a
lookup on a key press of a text box.

What this will do is once a user enters a letter into the textbox,
this will filter a list from a database and populate some filtered options
for the user to choose in a seperate listbox.
Any subsequent key presses will further filter this result set.

Now utilising the OnTextChanged property of the textbox, this works
perfectly.
Except you have to tab out of the textbox to trigger the event.

So to make the on key press event work, in my Page_Load i added the
onkeypress attribute to the textbox and specified this to trigger the text
changed event.
tbSearchTerm.Attributes.Add("onkeypress",
Page.ClientScript.GetPostBackEventReference(tbSear chTerm, ""));

Now this kind of seems to work, but has a one character delay.

Example:

action: I enter the character "A" into the textbox.
result: Nothing happens

action: I enter an additional character "B" into the textbox
result: Results for the letter "A" are now returned

action: I enter my third character "C" into the textbox
result: Results for a search for letters "AB" are now returned.

This is causing a most undesirable effect.

How is one supposed to utilise an OnKeyPress action in the AJAX.Net
framework?
This was downloaded from:
http://ajax.asp.net/
And i have been unable to find another solution to this problem.

Any advice would be greatly appreciated

TIA

Mar 25 '07 #2
thanks for your advice

But I can't seem to find these components in the new framework
(atlas:AutoCompleteExtender)
I'm kind of late to these Ajax.NET extensions, and only caught on with the
latest release 1.0.

I've also managed to find several atlas solutions for this problem online,
but i can't seem to use any of them.

The only components that seem to come out the box are:
Pointer
Timer
ScriptManager
ScriptManagerProxy
UpdateProgress
UpdatePanel

I also haven't had to declare a web method or create a web service to utlise
Ajax.NET functionality.

All controls placed in the UpdatePanel, or referenced by an UpdatePanel
trigger,
will call my page methods directly without me needing to create a .asmx page
or declare a web method.

Hopefully you or someone else can advice me futher,
i've also posted on the ajax.asp.net forum, and will post my solution here
if i find one.

thanks again

"Ben Rush" <kw*****@yahoo.comwrote in message
news:eZ**************@TK2MSFTNGP04.phx.gbl...
I'm not sure I can be of much more help than sharing some code I made a
long, long time ago; back when it was still "Atlas" - I just scrounged it
up from the archives of my hard drive. So, some things may have changed a
bit, but hopefully this can give you some kind of a head start. I'm sorry,
at the moment I can't do much more due to time restrictions:

I used the AutoCompleteExtender:

<asp:TextBox ID="TextBox_ToLine"
runat="server"></asp:TextBox>
<atlas:AutoCompleteExtender ID="AutoCompleteExtender1"
ServicePath="WebService.asmx"
ServiceMethod="GetToLineSuggestions"
MinimumPrefixLength="3" runat="server">
<atlas:AutoCompleteProperties
TargetControlID="TextBox_ToLine" Enabled="true" />
</atlas:AutoCompleteExtender>

This, like a lot of ASP.Net AJAX, utilizes web services. This is the
service method that I created to handle this:

<WebMethod(EnableSession:=True)_
Public Function GetToLineSuggestions(ByVal prefixText As String, ByVal
count As Int32) As String()
' call into stored procedure code - can't show
End Function

...sorry man, I can't give more than that at the moment.

--
~~~~~~~~~~~
Ben Rush
http://www.ben-rush.net/blog
"Grant Merwitz" <dr********@xbox-360.co.zawrote in message
news:OO**************@TK2MSFTNGP06.phx.gbl...
>Hi

I am trying to implement the Microsoft Ajax.NET extensions to perform a
lookup on a key press of a text box.

What this will do is once a user enters a letter into the textbox,
this will filter a list from a database and populate some filtered
options for the user to choose in a seperate listbox.
Any subsequent key presses will further filter this result set.

Now utilising the OnTextChanged property of the textbox, this works
perfectly.
Except you have to tab out of the textbox to trigger the event.

So to make the on key press event work, in my Page_Load i added the
onkeypress attribute to the textbox and specified this to trigger the
text changed event.
tbSearchTerm.Attributes.Add("onkeypress",
Page.ClientScript.GetPostBackEventReference(tbSea rchTerm, ""));

Now this kind of seems to work, but has a one character delay.

Example:

action: I enter the character "A" into the textbox.
result: Nothing happens

action: I enter an additional character "B" into the textbox
result: Results for the letter "A" are now returned

action: I enter my third character "C" into the textbox
result: Results for a search for letters "AB" are now returned.

This is causing a most undesirable effect.

How is one supposed to utilise an OnKeyPress action in the AJAX.Net
framework?
This was downloaded from:
http://ajax.asp.net/
And i have been unable to find another solution to this problem.

Any advice would be greatly appreciated

TIA


Mar 26 '07 #3
Ben, you were pretty much spot on.
I needed to download the ClientScript tool kit

http://forums.asp.net/1637103/ShowThread.aspx#1637103

"Grant Merwitz" <dr********@xbox-360.co.zawrote in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
thanks for your advice

But I can't seem to find these components in the new framework
(atlas:AutoCompleteExtender)
I'm kind of late to these Ajax.NET extensions, and only caught on with the
latest release 1.0.

I've also managed to find several atlas solutions for this problem online,
but i can't seem to use any of them.

The only components that seem to come out the box are:
Pointer
Timer
ScriptManager
ScriptManagerProxy
UpdateProgress
UpdatePanel

I also haven't had to declare a web method or create a web service to
utlise Ajax.NET functionality.

All controls placed in the UpdatePanel, or referenced by an UpdatePanel
trigger,
will call my page methods directly without me needing to create a .asmx
page or declare a web method.

Hopefully you or someone else can advice me futher,
i've also posted on the ajax.asp.net forum, and will post my solution here
if i find one.

thanks again

"Ben Rush" <kw*****@yahoo.comwrote in message
news:eZ**************@TK2MSFTNGP04.phx.gbl...
>I'm not sure I can be of much more help than sharing some code I made a
long, long time ago; back when it was still "Atlas" - I just scrounged it
up from the archives of my hard drive. So, some things may have changed a
bit, but hopefully this can give you some kind of a head start. I'm
sorry, at the moment I can't do much more due to time restrictions:

I used the AutoCompleteExtender:

<asp:TextBox ID="TextBox_ToLine"
runat="server"></asp:TextBox>
<atlas:AutoCompleteExtender ID="AutoCompleteExtender1"
ServicePath="WebService.asmx"
ServiceMethod="GetToLineSuggestions"
MinimumPrefixLength="3" runat="server">
<atlas:AutoCompleteProperties
TargetControlID="TextBox_ToLine" Enabled="true" />
</atlas:AutoCompleteExtender>

This, like a lot of ASP.Net AJAX, utilizes web services. This is the
service method that I created to handle this:

<WebMethod(EnableSession:=True)_
Public Function GetToLineSuggestions(ByVal prefixText As String, ByVal
count As Int32) As String()
' call into stored procedure code - can't show
End Function

...sorry man, I can't give more than that at the moment.

--
~~~~~~~~~~~
Ben Rush
http://www.ben-rush.net/blog
"Grant Merwitz" <dr********@xbox-360.co.zawrote in message
news:OO**************@TK2MSFTNGP06.phx.gbl...
>>Hi

I am trying to implement the Microsoft Ajax.NET extensions to perform a
lookup on a key press of a text box.

What this will do is once a user enters a letter into the textbox,
this will filter a list from a database and populate some filtered
options for the user to choose in a seperate listbox.
Any subsequent key presses will further filter this result set.

Now utilising the OnTextChanged property of the textbox, this works
perfectly.
Except you have to tab out of the textbox to trigger the event.

So to make the on key press event work, in my Page_Load i added the
onkeypress attribute to the textbox and specified this to trigger the
text changed event.
tbSearchTerm.Attributes.Add("onkeypress",
Page.ClientScript.GetPostBackEventReference(tbSe archTerm, ""));

Now this kind of seems to work, but has a one character delay.

Example:

action: I enter the character "A" into the textbox.
result: Nothing happens

action: I enter an additional character "B" into the textbox
result: Results for the letter "A" are now returned

action: I enter my third character "C" into the textbox
result: Results for a search for letters "AB" are now returned.

This is causing a most undesirable effect.

How is one supposed to utilise an OnKeyPress action in the AJAX.Net
framework?
This was downloaded from:
http://ajax.asp.net/
And i have been unable to find another solution to this problem.

Any advice would be greatly appreciated

TIA



Mar 26 '07 #4
Grant,

If you use "onkeyup" it would return the current text

"Grant Merwitz" wrote:
Hi

I am trying to implement the Microsoft Ajax.NET extensions to perform a
lookup on a key press of a text box.

What this will do is once a user enters a letter into the textbox,
this will filter a list from a database and populate some filtered options
for the user to choose in a seperate listbox.
Any subsequent key presses will further filter this result set.

Now utilising the OnTextChanged property of the textbox, this works
perfectly.
Except you have to tab out of the textbox to trigger the event.

So to make the on key press event work, in my Page_Load i added the
onkeypress attribute to the textbox and specified this to trigger the text
changed event.
tbSearchTerm.Attributes.Add("onkeypress",
Page.ClientScript.GetPostBackEventReference(tbSear chTerm, ""));

Now this kind of seems to work, but has a one character delay.

Example:

action: I enter the character "A" into the textbox.
result: Nothing happens

action: I enter an additional character "B" into the textbox
result: Results for the letter "A" are now returned

action: I enter my third character "C" into the textbox
result: Results for a search for letters "AB" are now returned.

This is causing a most undesirable effect.

How is one supposed to utilise an OnKeyPress action in the AJAX.Net
framework?
This was downloaded from:
http://ajax.asp.net/
And i have been unable to find another solution to this problem.

Any advice would be greatly appreciated

TIA
May 23 '07 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: =?Utf-8?B?SGFyZHkgV2FuZw==?= | last post by:
Hi all, I followed first walk through sample from http://ajax.asp.net/docs/tutorials/IntroductionUpdatePanel.aspx to create my first testing page, The problem is after I clicked that botton, it...
2
by: Rahul | last post by:
I am trying the following thing in AJAX <atlas:ScriptManager ID="scriptmanager1" runat="Server" EnablePartialRendering="true" /> <asp:DropDownList ID="cmbBranchname" cssclass="Combostyle"...
4
by: pablorp80 | last post by:
Hello, Here is what I need: I need the focus and the cursor set to a textbox named txtGT, every time no matter if it is the first page load or whether it is a postback. Here is the problem: I...
6
by: progman417 | last post by:
I'm building my first little application in .net (C# - framework 3.5). So far, I've built a search page where the user enters values into text boxes, clicks a button and it displays a grid of...
5
by: simon | last post by:
hello, I have a server set up on my local (home) network and can not get an ajax application to run on the box. it works fine on our developement server and also works fine locally. I...
11
by: Jonathan Wood | last post by:
Can anyone point me to any good resources on adding AJAX to a page once the page has already been created? I know VS2008 has options to add AJAX pages, but I didn't select those options when the...
4
by: Peter | last post by:
ASP.NET I have an application which use ASP.NET Autocomplete extender which works great. But I have a question how to update all the fields on the screen using Ajax. Users starts typing in a...
1
by: Mark B | last post by:
This is my first try at using AJAX. I want the calendars to be enabled if the user checks CheckBox1. It works OK for a normal all page refresh but once I introduced the AJAX code it stopped...
1
by: Yan | last post by:
Hi, I'm apparently far from being the 1st one to meet this error... My asp.net ajax page requires ScriptManager.axd but gets a 404. following a lot of "This is how I solved it" posts, I : -...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific technical details, Gmail likely implements measures...
1
by: Matthew3360 | last post by:
Hi, I have been trying to connect to a local host using php curl. But I am finding it hard to do this. I am doing the curl get request from my web server and have made sure to enable curl. I get a...
0
Oralloy
by: Oralloy | last post by:
Hello Folks, I am trying to hook up a CPU which I designed using SystemC to I/O pins on an FPGA. My problem (spelled failure) is with the synthesis of my design into a bitstream, not the C++...
0
by: Carina712 | last post by:
Setting background colors for Excel documents can help to improve the visual appeal of the document and make it easier to read and understand. Background colors can be used to highlight important...
0
BLUEPANDA
by: BLUEPANDA | last post by:
At BluePanda Dev, we're passionate about building high-quality software and sharing our knowledge with the community. That's why we've created a SaaS starter kit that's not only easy to use but also...
0
by: Rahul1995seven | last post by:
Introduction: In the realm of programming languages, Python has emerged as a powerhouse. With its simplicity, versatility, and robustness, Python has gained popularity among beginners and experts...
2
by: Ricardo de Mila | last post by:
Dear people, good afternoon... I have a form in msAccess with lots of controls and a specific routine must be triggered if the mouse_down event happens in any control. Than I need to discover what...
1
by: Johno34 | last post by:
I have this click event on my form. It speaks to a Datasheet Subform Private Sub Command260_Click() Dim r As DAO.Recordset Set r = Form_frmABCD.Form.RecordsetClone r.MoveFirst Do If...
1
by: ezappsrUS | last post by:
Hi, I wonder if someone knows where I am going wrong below. I have a continuous form and two labels where only one would be visible depending on the checkbox being checked or not. Below is the...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.