如何在Jedox Widget中用JavaScript变量作为HTML视频源?
在Jedox Widget中动态设置视频URL的方案
方法1:用已获取的JS变量直接修改DOM
如果已经通过JavaScript拿到了视频URL变量(比如命名为videoUrl),可以在DOM加载完成后定位<source>元素并替换src:
<video controls> <source id="videoSource" src="???" type="video/mp4"> 你的浏览器不支持视频播放。 </video> <script> // 假设此处已获取到视频URL const videoUrl = "你的视频实际地址"; document.addEventListener('DOMContentLoaded', () => { const sourceEl = document.getElementById('videoSource'); if (sourceEl && videoUrl) { sourceEl.src = videoUrl; // 强制视频元素重新加载资源 sourceEl.parentElement.load(); } }); </script>
方法2:从Jedox电子表格命名区域读取URL
如果视频URL存储在电子表格的命名区域(对应Widget Source栏的公式),可以用Jedox内置API直接获取值:
<video controls> <source id="videoSource" src="???" type="video/mp4"> 你的浏览器不支持视频播放。 </video> <script> // 替换成你的电子表格命名区域名称 const videoUrl = jedox.wss.getCellValue("视频URL区域"); document.addEventListener('DOMContentLoaded', () => { const sourceEl = document.getElementById('videoSource'); if (sourceEl && videoUrl) { sourceEl.src = videoUrl; sourceEl.parentElement.load(); } }); </script>
关键注意点
- 确保视频URL可直接访问,跨域场景需要目标服务器开启CORS
- 根据视频格式调整
<source>的type属性(如video/webm、video/ogg) - 修改
src后必须调用load(),否则视频元素不会加载新资源
内容的提问来源于stack exchange,提问作者Graham Chandler
相关产品推荐
相关产品推荐

