html form in javascript variable

Discussion in 'Javascript' started by mirek, Nov 12, 2009.

  1. mirek

    mirek Guest

    Hi,
    My problem is:
    I have javascript variable like this:

    var variable = "<form name='formABC' method='POST'>"+
    "<input type='text' id='nameABC'>"+
    ... <form>";
    How can I get nameABC and put it into some other variable without
    reloading a browser?
    Thanks
    mirek, Nov 12, 2009
    #1
    1. Advertising

  2. mirek wrote:

    > I have javascript variable like this:
    >
    > var variable = "<form name='formABC' method='POST'>"+
    > "<input type='text' id='nameABC'>"+
    > ... <form>";
    > How can I get nameABC and put it into some other variable without
    > reloading a browser?


    What is it exactly that you want to read out? The id attribute value of
    the first input element in the form?

    That could be done as follows:

    var variable = "<form name='formABC' method='POST'>"+
    "<input type='text' id='nameABC'>"+
    "</form>";

    var div = document.createElement('div');
    div.innerHTML = variable;

    var input =
    div.getElementsByTagName('form')[0].getElementsByTagName('input')[0];
    if (input != null) {
    alert(input.id);
    }


    --

    Martin Honnen
    http://msmvps.com/blogs/martin_honnen/
    Martin Honnen, Nov 13, 2009
    #2
    1. Advertising

  3. Martin Honnen wrote:

    > What is it exactly that you want to read out? The id attribute value of
    > the first input element in the form?
    >
    > That could be done as follows:
    >
    > var variable = "<form name='formABC' method='POST'>"+
    > "<input type='text' id='nameABC'>"+
    > "</form>";
    >
    > var div = document.createElement('div');
    > div.innerHTML = variable;
    >
    > var input =
    > div.getElementsByTagName('form')[0].getElementsByTagName('input')[0];
    > if (input != null) {
    > alert(input.id);
    > }


    Given a Valid document, that is unnecessarily complicated and error-prone.
    (You know better than that.)

    window.alert(document.forms["formABC"].elements["nameABC"].id);

    or

    window.alert(document.getElementById("nameABC").id);

    Not that the latter reference worm is recommended, though. All return
    values should be tested before being used.


    PointedEars
    --
    realism: HTML 4.01 Strict
    evangelism: XHTML 1.0 Strict
    madness: XHTML 1.1 as application/xhtml+xml
    -- Bjoern Hoehrmann
    Thomas 'PointedEars' Lahn, Nov 13, 2009
    #3
  4. Thomas 'PointedEars' Lahn wrote:

    > Martin Honnen wrote:
    >> What is it exactly that you want to read out? The id attribute value of
    >> the first input element in the form?
    >>
    >> That could be done as follows:
    >>
    >> var variable = "<form name='formABC' method='POST'>"+
    >> "<input type='text' id='nameABC'>"+
    >> "</form>";
    >>
    >> var div = document.createElement('div');
    >> div.innerHTML = variable;
    >>
    >> var input =
    >> div.getElementsByTagName('form')[0].getElementsByTagName('input')[0];
    >> if (input != null) {
    >> alert(input.id);
    >> }

    >
    > Given a Valid document, that is unnecessarily complicated and error-prone.
    > (You know better than that.)
    >
    > window.alert(document.forms["formABC"].elements["nameABC"].id);
    >
    > or
    >
    > window.alert(document.getElementById("nameABC").id);
    >
    > Not that the latter reference worm is recommended, though. All return
    > values should be tested before being used.


    Sorry, I have misunderstood your answer. OP: Use my answer as a solution if
    you want to find out the value of the contro instead.


    PointedEars
    --
    Anyone who slaps a 'this page is best viewed with Browser X' label on
    a Web page appears to be yearning for the bad old days, before the Web,
    when you had very little chance of reading a document written on another
    computer, another word processor, or another network. -- Tim Berners-Lee
    Thomas 'PointedEars' Lahn, Nov 13, 2009
    #4
  5. mirek

    mirek Guest

    On 13 Lis, 19:26, Martin Honnen <> wrote:
    > mirek wrote:
    > > I have javascript variable like this:

    >
    > > var variable = "<form name='formABC'  method='POST'>"+
    > >                  "<input type='text' id='nameABC'>"+
    > >                  ... <form>";
    > > How can I get nameABC and put it into some other variable without
    > > reloading a browser?

    >
    > What is it exactly that you want to read out? The id attribute value of
    > the first input element in the form?
    >
    > That could be done as follows:
    >
    > var variable = "<form name='formABC'  method='POST'>"+
    >                   "<input type='text' id='nameABC'>"+
    >                  "</form>";
    >
    > var div = document.createElement('div');
    > div.innerHTML = variable;
    >
    > var input =
    > div.getElementsByTagName('form')[0].getElementsByTagName('input')[0];
    > if (input != null) {
    >    alert(input.id);
    >
    > }
    >
    > --
    >
    >         Martin Honnen
    >        http://msmvps.com/blogs/martin_honnen/


    Thank U very much. InnerHtml is the answer 4 my question :)
    mirek, Nov 16, 2009
    #5
  6. mirek wrote:

    > On 13 Lis, 19:26, Martin Honnen <> wrote:
    >> What is it exactly that you want to read out? The id attribute value of
    >> the first input element in the form?
    >>
    >> That could be done as follows:
    >>
    >> var variable = "<form name='formABC' method='POST'>"+
    >> "<input type='text' id='nameABC'>"+
    >> "</form>";
    >>
    >> var div = document.createElement('div');
    >> div.innerHTML = variable;
    >>
    >> var input =
    >> div.getElementsByTagName('form')[0].getElementsByTagName('input')[0];
    >> if (input != null) {
    >> alert(input.id);
    >>
    >> }
    >> [...]

    >
    > Thank U very much. InnerHtml is the answer 4 my question :)


    You mistyped "the cause of my future problems" only slightly.

    This is not an Internet chat. And trim your quotes.

    <http://jibbering.com/faq/#posting>


    PointedEars
    --
    Prototype.js was written by people who don't know javascript for people
    who don't know javascript. People who don't know javascript are not
    the best source of advice on designing systems that use javascript.
    -- Richard Cornford, cljs, <f806at$ail$1$>
    Thomas 'PointedEars' Lahn, Nov 16, 2009
    #6
    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. TNG
    Replies:
    2
    Views:
    2,320
  2. mfglinux
    Replies:
    11
    Views:
    670
    Roberto Bonvallet
    Sep 12, 2007
  3. David Filmer
    Replies:
    19
    Views:
    216
    Kevin Collins
    May 21, 2004
  4. michael
    Replies:
    3
    Views:
    326
  5. Replies:
    5
    Views:
    175
Loading...

Share This Page