生成Youtube在表单中嵌入来自URL的iframe以进行预览

时间:2017-10-15 04:25:05

标签: javascript html iframe youtube

所以我创建了一个表单,人们可以输入描述食谱的各种数据。其中一种数据类型是YouTube视频网址。我想将用户放入的数据放入网址框并生成带有视频的iframe,以便预览并确保它是正确的。这是我正在使用的代码:



function makeVideoPreview(aTable, aTextBox)
{
	var aVideo = document.createElement("iframe");
	aVideo.setAttribute("width", "560");
	aVideo.setAttribute("height", "315");
	var theURL = aTextBox.value;

	var idIndex = theURL.indexOf("v=") + 2;
	var vidID = theURL.slice(idIndex, theURL.length     );;

	var embedLink = "https://www.youtube.com/embed/"+ vidID;
	aVideo.setAttribute("src", embedLink);
	aVideo.setAttribute('allowfullscreen', 'true');
    aVideo.setAttribute('frameborder', "0");
	aTable.appendChild(aVideo);
}




如果我使用调试器并逐步执行代码,iframe将被放置在正确的位置,开始加载,然后我得到405方法不允许错误并重新加载整个页面。

如果我从调试器复制生成的iframe并将其粘贴到html源代码中,它可以正常工作。世界上到底发生了什么?

我不是网络人。我主要做本机iOS开发,但我把它作为一个资源,以便我正在制作应用程序的公司可以添加配方内容。我确信这是我对该平台不了解的事情。

感谢。

1 个答案:

答案 0 :(得分:0)

我刚刚找到答案!我认为。显然每个元素“按钮”都默认提交。我认为提交是一个提交,按钮是一个少动作的元素,除非给出一个特定的onclick或类似的功能。显然必须将按钮类型设置为按钮或默认提交。