HTML Javascript 文件上传
HTML Javascript File Upload
我有以下 HTML 对象和文件
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]" />
<input type='button' id='btnSendFile' value='sendFile' />
<output id="list"></output>
</form>
Where using the file browse in type="file",我select上传一个文件。当我单击 btnSendFile 时,selected 文件的文件名出现在名称下方。但是,当我在下面传递它时,文件变量为空。我需要访问文件对象的文件对象属性。
我有发送文件的功能。
var file ;
function sendFile(file) {
var to = $('#to').get(0).value;
var filename = file.name;
var filesize = file.size;
var mime = file.type;
}
$('#btnSendFile').bind('click', function() {
sendFile(file);
});
如何获取 javascript 中需要 file.name、file.size 和 file.type 的文件对象?我应该分配什么变量文件?
更新:
答案:
file= $("#file")[0].files[0];
您好,这是您的回答
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]"/>
<input type='button' id='btnSendFile' value='sendFile' onclick="myFunction()" />
<output id="list"></output>
</form>
<script>
function myFunction(){
var x = document.getElementById("file");
var txt = "";
var file = x.files[0];
if ('name' in file) {
txt += "name: " + file.name + "<br>";
}
if ('size' in file) {
txt += "size: " + file.size + " bytes <br>";
}
document.getElementById ("list").innerHTML = txt;
}
</script>
将this.previousElementSibling.files[0]
或$("#file")[0].files[0]
传递给sendFile
// var file;
function sendFile(file) {
// var to = $('#to').get(0).value;
var filename = file.name;
var filesize = file.size;
var mime = file.type;
$("#list").html(filename + " " + filesize + " " + mime)
}
$("#btnSendFile").bind("click", function() {
sendFile(this.previousElementSibling.files[0]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]" />
<input type='button' id='btnSendFile' value='sendFile' />
<output id="list"></output>
</form>
我有以下 HTML 对象和文件
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]" />
<input type='button' id='btnSendFile' value='sendFile' />
<output id="list"></output>
</form>
Where using the file browse in type="file",我select上传一个文件。当我单击 btnSendFile 时,selected 文件的文件名出现在名称下方。但是,当我在下面传递它时,文件变量为空。我需要访问文件对象的文件对象属性。
我有发送文件的功能。
var file ;
function sendFile(file) {
var to = $('#to').get(0).value;
var filename = file.name;
var filesize = file.size;
var mime = file.type;
}
$('#btnSendFile').bind('click', function() {
sendFile(file);
});
如何获取 javascript 中需要 file.name、file.size 和 file.type 的文件对象?我应该分配什么变量文件?
更新: 答案:
file= $("#file")[0].files[0];
您好,这是您的回答
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]"/>
<input type='button' id='btnSendFile' value='sendFile' onclick="myFunction()" />
<output id="list"></output>
</form>
<script>
function myFunction(){
var x = document.getElementById("file");
var txt = "";
var file = x.files[0];
if ('name' in file) {
txt += "name: " + file.name + "<br>";
}
if ('size' in file) {
txt += "size: " + file.size + " bytes <br>";
}
document.getElementById ("list").innerHTML = txt;
}
</script>
将this.previousElementSibling.files[0]
或$("#file")[0].files[0]
传递给sendFile
// var file;
function sendFile(file) {
// var to = $('#to').get(0).value;
var filename = file.name;
var filesize = file.size;
var mime = file.type;
$("#list").html(filename + " " + filesize + " " + mime)
}
$("#btnSendFile").bind("click", function() {
sendFile(this.previousElementSibling.files[0]);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<form name='file_form' class="panel-body">
<input type="file" id="file" name="file[]" />
<input type='button' id='btnSendFile' value='sendFile' />
<output id="list"></output>
</form>