We help IT Professionals succeed at work.

document.write variables

3rdLifeWebDev
on
309 Views
Last Modified: 2012-05-07
I want to take variables passed in URL string and write them to the body of the html page.

See code below.

What am I missing?
<html><head><script type="text/javascript" language="javascript">
 
function parseQString() {
  var qs = new Array();
  var loc = location.search;
  if (loc) {
    loc = loc.substring(1); 
    var parms = loc.split('&');
    for (var i = 0; i < parms.length; i++) {
      nameValue = parms[i].split('=');
      qs[nameValue[0]] = (nameValue.length == 2) ? unescape(nameValue[1]).replace(/\+/g,' '): null;
    }
  }
  return qs;
}
function getQSParm(parm) {
  return (qs[parm]) ? qs[parm] : null
}
var qs = parseQString(); 
 
var Contact0FirtName = "Contact0FirstName"
 
function writetext() {
   document.Contact0FirstName.value=getQSParm("Contact0FirstName");
  }
window.onload=function() {writetext();}
 
</script><body><SCRIPT LANGUAGE=JavaScript>
document.write("Contact0FirstName!");
</SCRIPT>

Open in new window

Comment
Watch Question

Michel PlungjanIT Expert
CERTIFIED EXPERT
Top Expert 2009

Commented:
several issues

Here is a better one

<html><head>
<script type="text/javascript" language="javascript">
 
function parseQString() {
  var qs = new Array();
  var loc = location.search;
  if (loc) {
    loc = loc.substring(1); 
    var parms = loc.split('&');
    for (var i = 0; i < parms.length; i++) {
      nameValue = parms[i].split('=');
      qs[nameValue[0]] = (nameValue.length == 2) ? unescape(nameValue[1]).replace(/\+/g,' '): null;
    }
  }
  return qs;
}
function getQSParm(parm) {
  return (qs[parm]) ? qs[parm] : "Not Passed"
}
var qs = parseQString(); 
 
function writetext() {
   document.forms[0].Contact0FirstName.value=getQSParm("Contact0FirstName");
  }
window.onload=function() {writetext();}
 
</script><body><SCRIPT LANGUAGE=JavaScript>
document.write("Contact0FirstName:"+getQSParm("Contact0FirstName"));
</SCRIPT>
<form>
<input type="text" name="Contact0FirstName" value="" />
</form>

Open in new window

Commented:
hello
or you can see :

http://www.netlobo.com/url_query_string_javascript.html

if you want

hope this helps
michel

Michel PlungjanIT Expert
CERTIFIED EXPERT
Top Expert 2009

Commented:
That was not his problem
The problem was syntax AFTER getting the parameters:

1.  document.Contact0FirstName.value is not valid syntax

2. document.write("Contact0FirstName!"); only writes the string Contact0FirstName!
Michel PlungjanIT Expert
CERTIFIED EXPERT
Top Expert 2009

Commented:
3. useless misspelled variable
var Contact0FirtName = "Contact0FirstName"

Author

Commented:
MPlungjan,

<SCRIPT LANGUAGE=JavaScript>
document.write(getQSParm("Contact0FirstName") + '' + getQSParm("Contact0LastName"));
</SCRIPT>

I need a space between the first and last name.
IT Expert
CERTIFIED EXPERT
Top Expert 2009
Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION

Author

Commented:
Uhh ...

THANKS!
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.