我想让用户选择一个文件。路径位置应存储在JavaScript字符串中。验证之后,我想对服务器进行ajax调用,以便使用PHP将文件上传到服务器上。
我不想直接提交表单,因为页面会重新加载,并且执行了很多sql查询,并且在服务器上会有不必要的负载。
<input type="file" id="files" name="files[]" multiple />
<output id="list"></output>
<script>
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object
// files is a FileList of File objects. List some properties.
var output = [];
for (var i = 0, f; f = files[i]; i++) {
alert(JSON.stringify(f));
output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ',
f.size, ' bytes, last modified: ',
f.lastModifiedDate ? f.lastModifiedDate.toLocaleDateString() : 'n/a',
'</li>');
}
document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>
此警报为我提供详细信息,但不提供我想要的路径。
获取路径的任何帮助,所以我可以使用jquery通过ajax传递字符串,并使用move_uploaded_file通过php上传文件。
提前致谢。
答案 0 :(得分:0)
当用户做出选择时,您应该有一个值。只需找到存放它的地方,然后将其拉回到您需要的地方。如果您不想仅仅为了获取值而提交表单,则可以在继续执行实际表单之前包含select / option组合,从中获取值。没有选择=没有形式。选择=表格,但尚未提交。