使用用户在脚本中选择的文件的结果

时间:2019-02-11 17:08:38

标签: javascript jquery

我正在尝试使用脚本中用户选择的文件名。如果我的输入表单元素为:

np.broadcast_to(np.arange(12),(12,12,12))

和我的脚本为:

<input id="browse" type="file" name="image_field"/>

要使用id =“ browse”的内容替换“ http://clips.vorwaerts-gmbh.de/VfE_html5.mp4”,我该怎么做

非常感谢您的宝贵时间。

2 个答案:

答案 0 :(得分:0)

您可以通过createObjectURL使用对象URL:

video.src = URL.createObjectURL(document.getElementById("browse").files[0]);

最好在操作完成后将其撤消(也许在loadedmetadata回调中):

URL.revokeObjectURL(video.src);

答案 1 :(得分:0)

检查:

function getVideoDimensionsOf(url){
return new Promise(function(resolve){
    // create the video element
    video = document.createElement('video');

    // place a listener on it
    video.addEventListener( "loadedmetadata", function () {
        // retrieve dimensions
        height = this.videoHeight;
        width = this.videoWidth;
        // send back result
        resolve({
            height : height,
            width : width
        });
    }, false );

    // start download meta-datas
    video.src = url;
});
}

const inputElement = document.getElementById("browse");
inputElement.addEventListener("change", handleFiles, false);

function handleFiles() {
  const fileList = this.files;
  console.log(this.files[0].name);

  getVideoDimensionsOf(URL.createObjectURL(this.files[0]))
.then(function(dimensions){
console.log("Video width: " + dimensions.width) ;
console.log("Video height: " + dimensions.height) ;
alert("Video width: " + dimensions.width + " Video height: " + dimensions.height);
});
}

https://jsfiddle.net/ch14trm0/1/