Solved

Add javascript event handler to a web control - in 1.1.

Posted on 2006-10-23
3
239 Views
Last Modified: 2008-03-10
I'm attempting to implement a set of javascript functions that produce type ahead functionality for a .net dropdown list box as found at:
http://aspalliance.com/articleViewer.aspx?aId=775&pId=-1

Alas, that solution assumes .net 2.0 where the code-behind rests on using the block below. I _think this is doing nothing more complicated  than assigning a javascript function to an event on the rendered web control...can that be achieved in the 1.1 framework?

{
  Type typ = GetType();
  if (!Page.ClientScript.IsClientScriptIncludeRegistered(typ, js))
  Page.ClientScript.RegisterClientScriptInclude(typ, js, js);
  ddlTest.Attributes.Add("onKeyDown", "TADD_OnKeyDown(this);");
}

thx
--steve...
0
Comment
Question by:juststeve
  • 2
3 Comments
 
LVL 6

Accepted Solution

by:
Roopesh_7 earned 350 total points
Comment Utility
yes we can achive thi also in 1.1 its nothing but only binding that web control with javascript
0
 

Author Comment

by:juststeve
Comment Utility
Thankx...I've been able to get basic functionality working by using:

        Dim scriptString As String
        scriptString = "<script language=JavaScript>"
        scriptString = scriptString & "TADD_OnKeyDown(this);"
        scriptString = scriptString & "</script>"

        If (Not IsStartupScriptRegistered("ddFindUser")) Then
            RegisterStartupScript("ddFindUser", scriptString.ToString)
        End If

        ddFindUser.Attributes.Add("onKeyDown", "TADD_OnKeyDown(this);")

Where I'm populating a dropdown thusly:
        ddFindUser.DataSource = ds.Tables(0).DefaultView
        ddFindUser.DataTextField = "strUName"
        ddFindUser.DataValueField = "UserIdentity"
        ddFindUser.Items.Insert(0, "All")
        ddFindUser.DataBind()

That produces this line in the rendered control:
<select name="ddFindUser" id="ddFindUser" onKeyDown="TADD_OnKeyDown(this);">
(Since I don't have any 2.0 projects setup i can't run a test against the original code to see how _it renders the HTML control, but this certainly _looks like it should look....

And the type ahead functionality _does, in fact, work. However...after IE has loaded the page it reports a javascript error occurred at this point in one of the js functions that, to all outward appearances, is working correctly:

function TADD_OnKeyDown(tb)
{
  if (event.ctrlKey) //this line reports error: 'Object required'
  return;
 
NOTE: the error is reported via the status bar page load indicator...not a popup dialog explicitly presented to the user.


0
 

Author Comment

by:juststeve
Comment Utility
it appears that the only thing I need to do is:
        ddFindUser.Attributes.Add("onKeyDown", "TADD_OnKeyDown(this);")


The RegisterStartupScript block is not needed. It appears that block had been adding an addtional line at the page level causeing the error.
0

Featured Post

Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

Join & Write a Comment

Suggested Solutions

Sometimes in DotNetNuke module development you want to swap controls within the same module definition.  In doing this DNN (somewhat annoyingly) swaps the Skin and Container definitions to the default admin selections.  To get around this you need t…
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 …
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

762 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

11 Experts available now in Live!

Get 1:1 Help Now