Jump to content
Xtreme .Net Talk

Recommended Posts

Posted

Hi,

I have an ASP.NET 1.1 form

It contains the following controls

1. Quantity (textbox)

2. ETD (textbox)

3. Customer (dropdown)

 

I have a TextChanged for the Quantity control that runs a Server procedure "RUNCHECKS"

 

The ETD is a Date field. The user cannot enter the date into this field manually . I have an image on the form that when the user clicks on opens up a pop-up calender and he selects the date from the calendar. When a date is selected it is automatically assigned to the ETD textbox.This is all done using Javascript

 

How can I fire the TextChanged event for the ETD textbox control that will run the "RUNCHECKS" method.

 

Thanks

When you gotta go,you gotta go !!!!!!!
Posted

Hack alert!

 

This is a bit of a hack; there may be a neater solution.

 

What you need to do is find the Javascript code that is generated to cause the autopostback for the Quantity textbox. You will probably find it in the onchange attribute of the HTML input element. Then, using the same code you can invoke the change event (of the Quantity textbox) in your own Javascript. With a little straightforward modification, you can trigger events for other controls, such as the ETD textbox.

 

The generated Javascript may look something like

 

__doPostBack("ctl00_content_Quantity", "")

 

Or it could be something more complex like

 

WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("controlname", "", false, "", "Page.aspx", false, true));

 

Either way, it is fairly simple to see what is happening. Like I said, it is a bit of a hack, but it does work. Just remember to change the Javascript if you rename your controls.

 

Good luck :cool:

Never trouble another for what you can do for yourself.
Posted

Hi MrPaul,

The date for ETD will be selected from a pop-up window that contains a calendar control. When the user selects a date in the pop-window a javascript function assigns the selected date to the ETD control in the calling form like below

 

function SetDate()
    {
      window.opener.document.forms["<%= FormName %>"].elements["<%= ControlName %>"].value = "<%= SelectedDate %>";
      window.close();
    }

 

Can I call the __doPostBack("ctl00_content_Quantity", "") function from the pop-up window ??

 

Thanks

When you gotta go,you gotta go !!!!!!!
Posted

Unsure about popups

 

My knowledge of the relationship between popup windows and their parent windows is limited, so I can't say for sure whether that would work.

 

Note that when I mentioned __doPostBack("ctl00_content_Quantity", ""), that was purely an example. This statement will not work for you - it will cause a postback, but not raise any events. You have to find the correct function call from the onchange attribute of the element which represents the Quantity textbox in the HTML, and use that.

 

As I said, I don't know much about popups, but I can think of some other hacks to work around the problem, such as using setTimeout to periodically check whether the contents of the ETD textbox has changed, and then cause a postback when it does.

 

Sorry I couldn't be more help...

Never trouble another for what you can do for yourself.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...