Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

PHP/javascript assigning a value to a text field doesn't work?

  • 2 replies
  • 1 has this problem
  • 11 views
  • Last reply by rking.ph

more options

I have a website someone else coded, where a text field won't display a value that is assigned to it.

Both form1.textfield3.value = form1.textfield1.value; and form1.textfield3.value = "99";

do not work, and the text field remains blank.

This same code works on Internet Explorer (Win and OSX), Safari, Chrome, and Opera. It does NOT work on Firefox 8 or 9.01 (Win and OSX) or 3.6.25; it used to work on an older Firefox we had (version unknown).

Javascript is enabled; is there anything else we can check?

I have a website someone else coded, where a text field won't display a value that is assigned to it. Both form1.textfield3.value = form1.textfield1.value; and form1.textfield3.value = "99"; do not work, and the text field remains blank. This same code works on Internet Explorer (Win and OSX), Safari, Chrome, and Opera. It does NOT work on Firefox 8 or 9.01 (Win and OSX) or 3.6.25; it used to work on an older Firefox we had (version unknown). Javascript is enabled; is there anything else we can check?

Chosen solution

If you check Firefox's Error Console (Ctrl+Shift+j), you will see "form1 is not defined". This is because Firefox does not automatically convert form1 into a reference to <form name="form1">. Instead, you need to edit the code a bit.

You can resolve the above error by beginning each function where you refer to form1 with this:

var form1 = document.forms["form1"];

However, this probably will just move the error to the next part of the notation (e.g., textfield3). The proper way to refer to the value of a named form field is:

document.forms["form1"].elements["textfield3"].value

or if you have defined form1,

form1.elements["textfield3"].value

So you have some editing to do. Not sure whether there are any shortcuts.

This forum focuses on end-user support. You can find more web development help on the mozillaZine Web Development board. Separate forum, separate registration.

Read this answer in context 👍 1

All Replies (2)

more options

Chosen Solution

If you check Firefox's Error Console (Ctrl+Shift+j), you will see "form1 is not defined". This is because Firefox does not automatically convert form1 into a reference to <form name="form1">. Instead, you need to edit the code a bit.

You can resolve the above error by beginning each function where you refer to form1 with this:

var form1 = document.forms["form1"];

However, this probably will just move the error to the next part of the notation (e.g., textfield3). The proper way to refer to the value of a named form field is:

document.forms["form1"].elements["textfield3"].value

or if you have defined form1,

form1.elements["textfield3"].value

So you have some editing to do. Not sure whether there are any shortcuts.

This forum focuses on end-user support. You can find more web development help on the mozillaZine Web Development board. Separate forum, separate registration.

more options

Thanks very much! I tested a few different permutations; the one that finally worked on Firefox was document.forms["form1"].textfield3.value (the other formats did not work - not sure why). I just replaced all necessary instances and everything worked in all the browsers we tested. I'm a bit disappointed that Firefox needed a little special attention, when other browsers handled the old code just fine, but I'm glad our code wasn't too complicated.

Modified by rking.ph