calling javascript function from asp.net

Discussion in 'ASP .Net' started by kimberly.walker, Dec 12, 2006.

  1. I have a piece of code that calls the clientside it works ok when no
    values are passed ie window.alert ('this is a test'). But I have a
    value from a textbox example:
    function openemail()
    {
    var email = document.getElementbyID("txtEmailAddress").value;
    window.alert(email);
    }
    when I call this function
    string script = "<script language='javascript'>openemail();</script>";
    Page.RegisterClientScriptBlock("email", script);
    Its gives me an error saying missing object.
    Any help will be greatly appreciated
     
    kimberly.walker, Dec 12, 2006
    #1
    1. Advertisements

  2. kimberly.walker

    Serge/XX Guest

    It is due to the fact that when the aspx page is rendered, your control
    txtEmailAddress will have a more complicated id based on page id and
    container control (if any).

    To solve your issue, just do this

    function openemail(theEmailAddressControl)
    {
    var email = document.getElementbyID(theEmailAddressControl).value;
    window.alert(email);
    }

    Then

    string script = "<script language='javascript'>" _
    "openemail(" & txtEmailAddress.ClientID & ");" _
    "</script>";
    Page.RegisterClientScriptBlock("email", script);

    Regards
     
    Serge/XX, Dec 12, 2006
    #2
    1. Advertisements

  3. kimberly.walker

    bruce barker Guest

    you are calling the function before the text control is parsed by the
    browser. try using RegisterStartupScript("openemail()")

    -- bruce (sqlwork.com)
     
    bruce barker, Dec 12, 2006
    #3
    1. Advertisements

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.