OTA*_*TAR 12 javascript jquery
我正在尝试使用以下代码获取有关正在上传的文件的信息:
$(document).ready(function() {
$('#btn').on('click', function() {
file_size = $("#my_file").files[0].size;
alert(file_size);
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<input id="my_file" type="file" name="my_name" />
<input id="btn" type="button" />
</form>Run Code Online (Sandbox Code Playgroud)
但它不起作用,控制台返回: $("#my_file").files is undefined
lui*_*s90 45
$("#my_file")是一个jQuery对象,而jQuery对象没有属性files...
要从jQuery中获取DOM元素,请执行
($("#my_file"))[0].files[0].size
Run Code Online (Sandbox Code Playgroud)
作为一个额外的注意,如果您还没有选择任何文件,($("#my_file"))[0].files[0]让你undefined和($("#my_file"))[0].files[0].size会抛出错误.
建议您添加支票...
if (($("#my_file"))[0].files.length > 0) {
file_size = ($("#my_file"))[0].files[0].size
} else {
// no file chosen!
}
Run Code Online (Sandbox Code Playgroud)
jQuery 对象没有files属性,您可以使用旧的getElementById或 jQueryget方法来选择 DOM Element 对象。
$(document).ready(function() {
$('#btn').on('click', function() {
file_size = document.getElementById("my_file").files[0].size;
alert(file_size);
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<input id="my_file" type="file" name="my_name" />
<input id="btn" type="button" />
</form>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25318 次 |
| 最近记录: |