To submit it immediately, just do this:
<input name="file_1" type="file" onchange="this.form.submit();">
If you are using JQuery:
$("input[name='file_1']").change(function() { this.form.submit(); });
About your other questions:
1) There are many methods out there... for example:
http://valums.com/ajax-upload/
http://www.webtoolkit.info/ajax-file-upload.html
(and many more. Just google for: "Ajax file upload" or "iframe file upload")
2) Don't worry about the width of the field. As you don't know how long can it be the path, it would never be long enough (i think). Also browsers may display it very different. For example Safari or Chrome show it very different from Firefox or IE. Just use the default length or the one that looks better with your design.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…