我想获取 xml 元素的 id,但我不知道如何访问它。我随机调用元素,所以我不知道如何获取当前元素信息
要了解我在做什么,请查看我的代码:
我有一个包含 2 个信息(一个 youtube 链接和一个相关 ID)的 xml 文件,如下所示:
<videos>
<video id="0">o6f9wJ1DWhY</video>
<video id="2">sp_WV91jx8E</video>
<video id="3">plWnm7UpsXk</video>
<video id="4">a1Y73sPHKxw</video>
<video id="5">9avT0e5KPPU</video>
<video id="6">VTO5yiN1b-I</video>
<video id="7">HnENgvGFc4</video>
<video id="8">d8u4CEBVq7s</video>
<video id="9">abRplCazEjk</video>
</videos>
在下一步中,我将外部 xml 文件的信息保存在变量中
var jqxhr = $.ajax({
type: 'POST',
url: "freeakshow.xml",
dataType: 'xml',
global: false,
async:false,
success: function(data) {
return data;
}
}).responseText;
xml_string = jqxhr;
然后我使用 DOMParser 将链接保存在数组中,以便稍后访问它们
function get_ids_from_xml_string(xml_string) {
// Parse the XML string into a XMLDocument
var doc = window.DOMParser
? new DOMParser().parseFromString(xml_string, 'text/xml') // Standard
: new ActiveXObject('Microsoft.XMLDOM').loadXML(xml_string); // IE
// Find the answer nodes
var id_nodes = doc.getElementsByTagName('video');
var videos = [];
// Loop through them and save their text content into an array
for (var i = 0; i < id_nodes.length; i++) {
videos.push(id_nodes[i].firstChild.data)
}
return videos;
}
var videos = get_ids_from_xml_string(xml_string);
之后我从数组中得到一个随机链接,所以我可以用它来用 Youtube API 播放它,但这现在没关系
function getId() {
return videos[Math.floor(Math.random() * videos.length)];
这是一个问题:我如何获得从 getId() 获得的当前随机链接的 id
我想在 div 中显示它,这样我就可以看到哪个 id 是当前的,哪个 id 是最后一个
(要了解这是什么意思,我想显示随机播放视频的当前和最后一个 id)}