public static XmlDocument LoadXml(string xml) { if ((string)Script.Literal("typeof (ActiveXObject)") == "undefined") { DOMParser domParser = new DOMParser(); return domParser.parseFromString(xml, "text/xml"); } else { XmlDocument xmlDOM = (XmlDocument) ((object)new ActiveXObject("Msxml2.DOMDocument")); Script.Literal("{0}.async = false",xmlDOM); Script.Literal("{0}.loadXML({1})",xmlDOM,xml); Script.Literal("{0}.setProperty('SelectionLanguage', 'XPath')",xmlDOM); return xmlDOM; } }
public static void DataLoaded(JsString strRequestResponse) { var parser = new DOMParser(); Document xmlData = parser.ParseFromString(strRequestResponse, "text/xml"); JsCode("xmlData.alltext = strRequestResponse"); if (xmlData != null) { previousXMLData = xmlData; } else { xmlData = previousXMLData; } if (xmlData != null) { JsString outHTML = ""; HtmlElement.GetById("podcastTitle").innerHTML = xmlData.GetElementsByTagName("title")[0].childNodes[0].nodeValue; outHTML += "<table class=\"episodes\">"; NodeList nodeList; nodeList = xmlData.GetElementsByTagName("channel"); if (nodeList.length > 0) { for (int i = 0; i < nodeList.length; i++) { if ((nodeList[i] as Element).GetElementsByTagName("item").length >= 1) { for (int ii = 0; ii < (nodeList[i] as Element).GetElementsByTagName("item").length; ii++) { Node selNode = ((nodeList[i] as Element).GetElementsByTagName("item"))[ii]; JsString strTitle = ""; JsString strPodcastLink = ""; JsString strPodcastMP3 = ""; //JsString strNodeIcon = ""; for (int x = 0; x < selNode.childNodes.length; x++) { if (selNode.childNodes[x].nodeName == "title") { strTitle = selNode.childNodes[x].childNodes[0].nodeValue; } if (selNode.childNodes[x].nodeName == "enclosure") { strPodcastMP3 = (selNode.childNodes[x] as Element).GetAttribute("url"); } if (selNode.childNodes[x].nodeName == "link") { strPodcastLink = selNode.childNodes[x].childNodes[0].nodeValue; } } outHTML += "<table width=\"100%\" onclick=\"playPodcast('" + strPodcastMP3 + "');\">"; outHTML += "<tr>"; outHTML += "<td class=\"ListItem\" align=\"left\" valign=\"middle\">"; outHTML += strTitle; outHTML += "</td>"; outHTML += "</tr></table>"; } } } outHTML += "</table>"; HtmlElement.GetById("podcastEpisodes").innerHTML = outHTML; } } }