Solved

Copy field to another field web form

Posted on 2014-09-09
8
320 Views
Last Modified: 2014-09-10
I am trying to build on online employment application.  I've got everything set but one item.  Part of the application process is they can upload a resume if they would like, the file field browses the file system so they can select a file.  Once selected it uploads with the form information they have provided.  I am trying to copy one field to another field within the form so when the data is saved, I know the name of the file they uploaded for their resume.  Everything works fine on explorer, google chrome, mozilla.  I can't get this to work on Safari, Macs or any mobile device.  Here is the code I am using to copy the original file field name to another hidden text field.    

<script>  
    var form = document.getElementById('form1');
form.elements.fle.onblur = function () {
    var form = this.form;
    form.elements.fle2.value = form.elements.fle.value;
};
    </script>

The file transfer and all other data are saved on every type of browser (including the mobile devices) the only thing not working is the name of the file they uploaded on the systems I mentioned before (to the hidden text field).  I hope I have provided enough information.  I am somewhat new at this web development thing and hoping someone can point me in the right direction.

Thank you in advance for any assistance.
0
Comment
Question by:rick123456789
  • 4
  • 3
8 Comments
 
LVL 24

Expert Comment

by:dgrafx
ID: 40314748
function blr(f1,f2) {
     document.getElementById(f2).value = document.getElementById(f1).value;
}
should work across browsers
you can use onblur="blr('fle1','fle2')"
you need to give each input an id - which i'm not sure if you've done or not
input id="fle1" & input id="fle2"
0
 
LVL 33

Expert Comment

by:Slick812
ID: 40315037
greetings  rick123456789, , I am not sure that your Form element access with code -
     form.elements.fle2.value = form.elements.fle.value;

is at all correct for some browsers. For me if I know the "name" of a form element, I can just property it from the DOM FORM object, as in if names is "hidden1" and "text1"
form1.hidden1.value = form1.text1.value;

if you use the FORM elements array, you can get individual elements by NAME with -
   form1.elements.namedItem("hidden1").value;

However the FORM file upload INPUT is a Different setup than any other Input, and it's "File name" value is NOT available in some browsers for access by some javascripts.
But, On the SERVER side code you already get the UPLOADED file name, without any hidden input copy, as all file uploads are delivered with a "File Name" from the Operating System that they came from.
0
 
LVL 24

Accepted Solution

by:
dgrafx earned 500 total points
ID: 40315062
something slick812 said prodded me into reading your post again - I believe I misunderstood ...

you are uploading a file
your file upload code on your backend will return the original filename - if asked
you are probably getting some useless temp filename when using form.fle
the syntax depends on the language you are using - what language are you using on the backend?

for ex:
https://www.google.com/?gws_rd=ssl#newwindow=1&q=how+to+return+the+uploaded+filename+in+php&spell=1
or
https://www.google.com/?gws_rd=ssl#newwindow=1&q=how+to+return+the+uploaded+filename+in+java
or
https://www.google.com/?gws_rd=ssl#newwindow=1&q=how+to+return+the+uploaded+filename+in+coldfusion
0
 

Author Comment

by:rick123456789
ID: 40315276
Slick812,

php writes the information on server side to a text file that is downloaded and imported into a database at the main office.  Download and import is automated.
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

Author Comment

by:rick123456789
ID: 40315328
sorry previous post should have been addressed to "dgrafx"
0
 

Author Comment

by:rick123456789
ID: 40315371
Got it.  Thanks dgrafx.  I had to dump the java and go back server side with php.  Once I got it to write the file name via the php post all browsers work.
0
 

Author Closing Comment

by:rick123456789
ID: 40315372
Thanks again :-)
0
 
LVL 24

Expert Comment

by:dgrafx
ID: 40315392
Glad it worked out!
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Although it can be difficult to imagine, someday your child will have a career of his or her own. He or she will likely start a family, buy a home and start having their own children. So, while being a kid is still extremely important, it’s also …
This tutorial demonstrates how to identify and create boundary or building outlines in Google Maps. In this example, I outline the boundaries of an enclosed skatepark within a community park.  Login to your Google Account, then  Google for "Google M…
Any person in technology especially those working for big companies should at least know about the basics of web accessibility. Believe it or not there are even laws in place that require businesses to provide such means for the disabled and aging p…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now