我想让用户选择一个文件。路径位置应存储在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上传文件。
提前谢谢。
当用户做出选择时,您应该有一个值。只需找到一个存储它的地方,然后把它放回你需要的地方。如果你不想提交表单只是为了获得值,你可以在继续到实际表单之前,包括一个从哪里获取值的选择/选项组合。没有选择=没有表单。选择=表单,但尚未提交。