从文本文件加载文件路径并将其作为视频源输入

时间:2016-07-12 11:51:47

标签: javascript jquery html function video

我一直在努力,不必在这里问这个问题。但是,唉...我无法让事情发挥作用。我是一个python程序员,但有最简单的要求输出HTML格式的东西。所以我没有时间适当地深入研究JQuery并理解语法,我一直在尝试" bodge"它......但是唉...没有快乐!

我在python中编写了一个maltego转换,它创建了一个连续的路径(源+实体名称),并将其作为文本文件输出。然后,我将该实体传递给Web浏览器,该浏览器将用户重定向到视频显示页面。然后我需要使用JQuery导入该文本文件,将该文本文件的路径插入变量,然后将该变量放入src中以获取视频。

基本HTML,其唯一目的是使用户能够在一系列变换结束时点击视频全屏,查找与实体名称相关联的视频。没什么好看的。

包含路径的文件名为" path.txt"。

    <HTML>
<HEAD>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>

  <body>

    <video id="video1" width="520" height="440" src="" type="video/mp4" controls>
      <source src="" type="video/mp4">
    </video>

<script>

$('#video1').load("path.txt", function(response) {
  var path = response;

  $("#video1").attr("src", path);

alert(path);
});

</script>

  </body>

</body>
</HTML>

这可能是我想要在胫骨上踢自己的东西......但是如果有人能为我清除这一点(并解释!),我将不胜感激。

2 个答案:

答案 0 :(得分:0)

您的JS代码语法不正确。你有几个不匹配的括号和括号。此外,response的使用需要全部发生在load()回调处理程序中,因为AJAX请求是异步的。试试这个:

function load_file() {
    $("#logList").load("path.txt", function(response) { 
        var path = response.trim();
        $("#video1").attr("src", path);
    });
}

答案 1 :(得分:0)

正如所指出的,你的js语法不正确。您的html中还有其他错误,但应注意。不推荐使用center代码:请改用margin(auto)。此外,我不认为来源需要身份证明。我做了fiddle(或者你可以运行代码片段)。显然,你必须创建一个path.txt并加载它才能使函数正常工作

&#13;
&#13;
function load_file() {

  $("#logList").load("path.txt", function(response) {
    var path = response;

    $("#video1").attr("src", path);
    alert("test " + path);


  });
}
&#13;
video {
  margin-right: auto;
  margin-left: auto;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<body>

  <input type="button" value="Load" onclick="load_file()" />


  <video id="video1" width="520" height="440" src="" type="video/mp4" controls>
    <source src="" type="video/mp4">
  </video>


</body>
&#13;
&#13;
&#13;