好的,下面的代码正在发送文件名,但是对于表单数据,它发送了[object HTMLInputElement]或[object HTMLSelectElement],我需要更改什么以获取表单中的值?
function _(el){
return document.getElementById(el); }
function uploadFile(){
var file = _("file1").files[0];
//alert(file.name+" | "+file.size+" | "+file.type);
var formdata = new FormData();
formdata.append("file1", file);
formdata.append("djname", _("djname"));
formdata.append("archive_date", _("archive_date"));
var ajax = new XMLHttpRequest();
ajax.upload.addEventListener("progress", progressHandler, false);
ajax.addEventListener("load", completeHandler, false);
ajax.addEventListener("error", errorHandler, false);
ajax.addEventListener("abort", abortHandler, false);
ajax.open("POST", "include/file_upload_parser.php");
ajax.send(formdata); }
一些形式
Date of Broadcast:
<input type='date' id='archive_date' name='archive_date' required>
Show Descripton (optional):<br>
<textarea rows='4' id='description' cols='50' name='description'>
<input type="file" name="file1" id="file1" accept="audio/mp3"><br>
最佳答案
您必须从元素中获取值,就像从文件输入中获取文件一样。
formdata.append("djname", _("djname").value);
formdata.append("archive_date", _("archive_date").value);
关于javascript - 使用document.getElementById附加formdata,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20970540/