function getXml(xmlUrl)
{
//变量初始化防止一直累加下去
strTableHeight = 0;
if(xmlUrl!="")
{
var objXML=new ActiveXObject("Msxml2.DOMDocument");
var strTable="";
strTable += "<table border=0 cellpadding=0 width=100% cellspacing=1 bgcolor=#FF9933>";
strTable += "<tr><td height=22 bgcolor=#DDDDDD>";
strTable+="<table id=table1 width=100% border=0 cellspacing=1 cellpadding=4>";
objXML.async=false;
objXML.load(xmlUrl)
var i = objXML.getElementsByTagName("node").length;
var strTitle,strUrl;
for(var j=0;j<i;j++)
{
strTitle = objXML.childNodes[1].childNodes[j].childNodes[0].text;
strUrl = objXML.childNodes[1].childNodes[j].childNodes[1].text;
strTable+="<tr><td height=22 bgcolor=#F5F5F5 align=left><span> </span><a href='#' onclick=parent.openUrl('"+strUrl+"')><font size=2>"+strTitle+"</font></a></td></tr>";
//动态生成iframe的高度,供setPlace调用
strTableHeight = strTableHeight + 28;
}
strTable+="</table>";
strTable+="</td></tr></table>";
return strTable;
}
else
{
return "";
}
}
{
//变量初始化防止一直累加下去
strTableHeight = 0;
if(xmlUrl!="")
{
var objXML=new ActiveXObject("Msxml2.DOMDocument");
var strTable="";
strTable += "<table border=0 cellpadding=0 width=100% cellspacing=1 bgcolor=#FF9933>";
strTable += "<tr><td height=22 bgcolor=#DDDDDD>";
strTable+="<table id=table1 width=100% border=0 cellspacing=1 cellpadding=4>";
objXML.async=false;
objXML.load(xmlUrl)
var i = objXML.getElementsByTagName("node").length;
var strTitle,strUrl;
for(var j=0;j<i;j++)
{
strTitle = objXML.childNodes[1].childNodes[j].childNodes[0].text;
strUrl = objXML.childNodes[1].childNodes[j].childNodes[1].text;
strTable+="<tr><td height=22 bgcolor=#F5F5F5 align=left><span> </span><a href='#' onclick=parent.openUrl('"+strUrl+"')><font size=2>"+strTitle+"</font></a></td></tr>";
//动态生成iframe的高度,供setPlace调用
strTableHeight = strTableHeight + 28;
}
strTable+="</table>";
strTable+="</td></tr></table>";
return strTable;
}
else
{
return "";
}
}
objXML.async=false;
objXML.load(xmlUrl)具体要如何取节点,你查msdn
<xml id=meizz>
<NewDataSet>
<TableName>
<TableName>xxx</TableName>
<TableID>yyy</TableID>
</TableName>
<TableName>
<TableName>33</TableName>
<TableID>444</TableID>
</TableName>
<FieldName>
<FieldName>ccc</FieldName>
<FieldID>gggg</FieldID>
<TableID>uuu</TableID>
</FieldName>
</NewDataSet>
</xml>
<select id=sel></select><SCRIPT LANGUAGE="JavaScript">
var x=new ActiveXObject("Microsoft.XMLDOM");
x.loadXML(document.all.meizz.innerHTML);
var tabs = x.selectNodes("NewDataSet/TableName");
for(var i=0; i<tabs.length; i++)
{
var txt = tabs.item(i).getElementsByTagName("TableName").item(0).text;
var val = tabs.item(i).getElementsByTagName("TableID").item(0).text;
var opt = new Option(txt, val, true, true);
sel.options[sel.options.length] = opt;
}
x=null;
</SCRIPT>
function getXml(url)
{
var rootxml=new ActiveXObject("microsoft.xmldom")
rootxml.async = false
rootxml.load(url)
return rootxml
}/************ 得到xml文档对象中符合路径的节点数组 *************/
function getXmlNode(xdoc,nodepath)
{
var resultnode=xdoc.selectNodes(nodepath);
return resultnode
}//调用部分:var xml=getXml(xml_url)
nodes=getXmlNode(xml,"//NewDataSet/TableName")
nodes是一个符合"//NewDataSet/TableName"路径的所有节点,是个数组对象
建议你下面的的tableid和tablename子节点都改为属性比较好
comboObj.length=comboObj.length
for(i=0;i<nodes.length;i++){
comboObj.options[i].text=nodes[0].getAttribute(id属性名)
comboObj.options[i].value=nodes[0].getAttribute(name属性名)
}
objXml.async=false;
objXml.loadXML(a.xml);
var nodeList=objXml.selectNodes("//TableName");
if(nodeList.length==0)
{
return;
}var Ooption;
for(var i=0;i<nodeList.length;i++)
{
Ooption = document.createElement("option");
Ooption.text = nodeList.item(i).selectSingleNode("TableName").text;
Ooption.value = NodeList.item(i).selectSingleNode("TableID").text;
ddlProducer.add (oOption);
}