Calendar in Datagrid

Discussion in 'ASP .Net Datagrid Control' started by John Walker, Jul 20, 2005.

  1. John Walker

    John Walker Guest

    Hi,
    I had posted the below question and received a suggestion from Fiaz, and
    then I posted a followup question but received no answer. This was a while
    ago so I thought that I should repost this. I hope Fiaz reads this, but if
    not, does anybody else agree with Fiaz's suggestion? Oldest messages start
    at bottom.

    Thanks!
    John

    >>>>>>>>>>>> Original Messages >>>>>>>>>>>>>


    Fiaz,

    I applied your code but the offsets weren't what I had expected. The
    hyperlink on every row in the datagrid showed the the same values. The
    values were:
    offsetTop: 1
    offsetLeft: 77
    offsetWidth: 31

    The calendar would appear in the upper left hand area of the screen, even
    though I was clicking on a hyperlink in the lower right hand side of the
    browser. I applied your code exactly as you posted it. Might you have any
    idea what I'm doing wrong?

    Thanks again,
    John

    "Fiaz Ali Saleemi" wrote:

    > Hi John
    >
    > Try this code sample and let us know. I hope it will work
    >
    > hlScheduledDeliveryCal = CType(e.Item.FindControl("hlScheduledDeliveryCal"),
    > HyperLink)
    >
    > hlScheduledDeliveryCal.Attributes.Add("onclick", "Go(this.offsetTop,
    > this.offsetLeft + this.offsetWidth, '" &
    > RTrim(txtScheduledDelivery.UniqueID) & "');")
    >
    > Add a javascript function to the client side.
    >
    > function Go(top, left, UniqueID)
    > {
    > var calendar_window = window.open('../controls/calendar.aspx?formname=' +
    > UniqueID,
    > 'calendar_window', 'width=154,height=184,top=' + top + ',left=' + left);
    > calendar_window.focus();
    > }
    >
    > Regards
    > Fiaz Ali Saleemi
    >
    >
    >"John Walker" wrote:
    >
    >Hi,
    >In my datagrid I have a textbox with a hyperlink next to it. When the user
    >clicks on the hyperlink it will pop open another window with a calendar
    >control, and when the user clicks a date, it will put that date in the
    >aforementioned textbox and close the calendar window. Here's the javascript
    >which is added to the hyperlink during ItemDataBound:
    >
    >'-----> BEGIN (txtScheduledDelivery is the textbox control which gets
    >populated with the date)
    >
    >hlScheduledDeliveryCal = CType(e.Item.FindControl("hlScheduledDeliveryCal"),
    >HyperLink)
    >
    >hlScheduledDeliveryCal.NavigateUrl =
    >"javascript:calendar_window=window.open('../controls/calendar.aspx?formname="
    >& RTrim(txtScheduledDelivery.UniqueID) &
    >"','calendar_window','width=154,height=184,top=220,left=500');calendar_window.focus()"
    >
    >'-----> END
    >
    >The issue is, our customer wants the popup calendar window to always pop up
    >right next to the hyperlink, so that the lazy users won't have to move the
    >mouse too far. Has anyone else needed to control the nearly exact position
    >of a popup window? Can it be easily done?
    >
    >Thanks,
    >John
    >
    >
    >
    John Walker, Jul 20, 2005
    #1
    1. Advertising

  2. Hi John

    Sorry for late response. Try this code sample and let us know. I am
    confident it will work

    hlScheduledDeliveryCal = CType(e.Item.FindControl("hlScheduledDeliveryCal"),
    HyperLink)

    hlScheduledDeliveryCal.Attributes.Add("onclick", "Go(event.x, event.y, '" &
    RTrim(txtScheduledDelivery.UniqueID) & "');")

    Add a javascript function to the client side.

    function Go(top, left, UniqueID)
    {
    var calendar_window = window.open('../controls/calendar.aspx?formname='
    + UniqueID,
    'calendar_window', 'width=154,height=184,top=' + top + ',left=' + left);

    calendar_window.focus();
    }

    You can set the left and top properties by passing event.x + number, event.y
    + number in Go method.
    If it works let me know.

    Regards
    Fiaz Ali Saleemi
    Fiaz Ali Saleemi, Jul 21, 2005
    #2
    1. Advertising

  3. John Walker

    John Walker Guest

    Fiaz,

    I needed to switch the x and y, but after that it worked like a charm.
    Thanks so much for your help!

    John

    "Fiaz Ali Saleemi" wrote:

    > Hi John
    >
    > Sorry for late response. Try this code sample and let us know. I am
    > confident it will work
    >
    > hlScheduledDeliveryCal = CType(e.Item.FindControl("hlScheduledDeliveryCal"),
    > HyperLink)
    >
    > hlScheduledDeliveryCal.Attributes.Add("onclick", "Go(event.x, event.y, '" &
    > RTrim(txtScheduledDelivery.UniqueID) & "');")
    >
    > Add a javascript function to the client side.
    >
    > function Go(top, left, UniqueID)
    > {
    > var calendar_window = window.open('../controls/calendar.aspx?formname='
    > + UniqueID,
    > 'calendar_window', 'width=154,height=184,top=' + top + ',left=' + left);
    >
    > calendar_window.focus();
    > }
    >
    > You can set the left and top properties by passing event.x + number, event.y
    > + number in Go method.
    > If it works let me know.
    >
    > Regards
    > Fiaz Ali Saleemi
    >
    >
    >
    John Walker, Jul 21, 2005
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Jay
    Replies:
    1
    Views:
    1,380
    Alvin Bruney [MVP]
    Feb 14, 2004
  2. Shevek
    Replies:
    3
    Views:
    6,009
    Shevek
    Jun 23, 2004
  3. Mike

    Calendar in a DataGrid column

    Mike, Jul 12, 2004, in forum: ASP .Net
    Replies:
    4
    Views:
    2,481
    Saravana [MVP]
    Jul 14, 2004
  4. Shevek
    Replies:
    0
    Views:
    373
    Shevek
    Jun 23, 2004
  5. Parthiv Joshi
    Replies:
    1
    Views:
    643
    Samuel L Matzen
    Jul 6, 2004
Loading...

Share This Page