足彩中奖计算器:数据岛的运用

来源:百度文库 编辑:中财网 时间:2024/05/06 20:46:17

数据岛是指存在于HTML页面中的XML代码。数据岛允许你在HTML页面中集成XML,对XML编 写脚本,而不需要通过脚本或标签读取XML。几乎所有能够存在于一个结构完整 的XML文档中的东西都能存在于一个数据岛中。包括处理指示、DOCTYPE声明和内部子集 。(注意,编码串不能放在数据岛中。)
元素标记数据岛的开始,它的ID属性提供了一个可以用来引用数据岛的名称。

...
var xmlID = "xmlcmbtree";
var cmbPrefix = "xmlcmb";
var nMaxLevel = 3;
var tblName = "tbl";
function CreateList(nLevel)
...{
  var doc = document.all("xmlcmbtree").documentElement;

  var nodes, nIndex, node;
  nodes = doc.childNodes;
  for (var i=1; i < nLevel;i++)
  ...{
nIndex = document.all(cmbPrefix + i).selectedIndex;
node = nodes[nIndex];
nodes = node.childNodes;
  }  

  var cmb = document.all(cmbPrefix + nLevel);
  if (!cmb)
  ...{
    cmb = document.createElement("SELECT");
    cmb.id = cmbPrefix + nLevel;
    cmb.onchange = new Function("ChangeSelection(" + nLevel + ")");

  //document.body.appendChild(cmb);
    var cell = document.all(tblName).rows[1].insertCell();
    cell.appendChild(cmb);

    
    cell = document.all(tblName).rows[0].insertCell();

    var label = document.createElement("SPAN");
    label.style.fontWeight = "bold";
    label.style.color = "red";
    label.innerHTML = nodes[0].nodeName + ":";

    cell.appendChild(label);

  // document.body.insertBefore(label,cmb)

  }  

  cmb.options.length = 0;

  

  for (i=0; i < nodes.length;i++)
  ...{
var opt = new Option(nodes[i].getAttribute("text"),nodes[i].getAttribute("value"));
cmb.options.add(opt);
  }

  ChangeSelection(nLevel);
}

function ChangeSelection(nLevel)
...{
  if (nLevel < nMaxLevel)
  CreateList(nLevel+1);
}