⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmltookit.js

📁 这个是jsp和servlet开发的在线考试系统
💻 JS
字号:
var xmlDoc=null;
var body=document.createElement('DIV');


function test(xmlPtah){
  xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlPtah='myadmin/test/'+xmlPtah.substring(0,4)+'/'+xmlPtah.substring(4,6)+'/'+xmlPtah.substring(6,8)+'/'+xmlPtah+'.xml';
  window.alert(xmlPtah);
}


function init(xmlPtah,bodys)
{
  xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlPtah='myadmin/test/'+xmlPtah.substring(0,4)+'/'+xmlPtah.substring(4,6)+'/'+xmlPtah.substring(6,8)+'/'+xmlPtah+'.xml';
  xmlDoc.async = false
  xmlDoc.load(xmlPtah);
  var list = getXMLArray(xmlDoc, 'subject');
  for(var i=0; i<list.length; i++) {
   var obj = list[i];
   if(getValue(obj,'Test_Type')=='1')
   {
      body.appendChild(createOneTest(getValue(obj,'No'),getValue(obj,'Test_Theme'),getValue(obj,'Test_A'),getValue(obj,'Test_B'),getValue(obj,'Test_C'),getValue(obj,'Test_D'),getValue(obj,'Test_Score')));
   }else
   {
       body.appendChild(createMTest(getValue(obj,'No'),getValue(obj,'Test_Theme'),getValue(obj,'Test_Score')));
   }
  }
  bodys.innerHTML=body.innerHTML;
}

function getXMLArray(xmlDoc, name) {
  var keys = name.split('.');
  var node = xmlDoc.documentElement;      // 得到根节点
  var rtn = new Array();
  var n = 0;

  for(var i=0; i<keys.length; i++) {
    var childs = node.childNodes;       // 得到子节点
    var key = keys[i];
 for(var k=0; k<childs.length; k++) {
   var child = childs[k];
   if(child.nodeName == key) {     // 判断子节点是否符合
  if(i == keys.length-1) {
          rtn[n] = child;
    n++;
  } else {
    node = child;
    break;
  }
   }
 }
  }

  return rtn;
}

/**
 * 得到由getXMLArray函数得到对象中的值
 * @param node 节点对象
 * @param name
 * @return 返回 String
 */
function getValue(node, name) {
  var keys = name.split('.');
  for(var i=0; i<keys.length; i++) {
    var childs = node.childNodes;       // 得到子节点
    var key = keys[i];
 for(var k=0; k<childs.length; k++) {
   var child = childs[k];
   if(child.nodeName == key) {     // 判断子节点是否符合
  if(child.childNodes.length == 1) {
    // 如果没有字节点,返回值
    return child.text;
  } else {
    // 还有子节点,继续分析
    node = child;
    break;
  }
   }
 }
  }
  return "";
}
function getTagValue(tagId)
{
  var result="";
    var children=document.getElementById(tagId).childNodes.item(0);
    for(var i=0;i<children.childNodes.length;i++)
    {
      result=getElementvale(children.childNodes[i],'');
      if(result)
      {
        return result;
      }
    }
    return result;
}

function getElementvale(el,result)
{
  if(el.nodeType==1)
  {
    var children=el.childNodes;
    for(var i=0;i<children.length;i++)
    {
      if(children[i].tagName=="INPUT")
      {
        if(children[i].checked)
        {
          return result=children[i].value;
        }
      }else if(children[i].tagName=="TEXTAREA")
      {

        return result=children[i].value;

      }
        return getElementvale(children[i],result);
    }
  }
}
function createOneTest(No,theme,A,B,C,D,score)
{
  var tab=createTable(No);
  var tr=createTR();
  var td=createTD();
  td.appendChild(createLabel(No+"题---"+theme+"---("+score+"分)"));
  tr.appendChild(td);
  tab.appendChild(tr);
  //
  tr=createTR();
  td=createTD();
  td.appendChild(createRadio('A',No));
  td.appendChild(createLabel(A));
  tr.appendChild(td);
  tab.appendChild(tr);
  //
    tr=createTR();
  td=createTD();
  td.appendChild(createRadio('B',No));
  td.appendChild(createLabel(B));
  tr.appendChild(td);
  tab.appendChild(tr);
  //
    tr=createTR();
  td=createTD();
  td.appendChild(createRadio('C',No));
  td.appendChild(createLabel(C));
  tr.appendChild(td);
  tab.appendChild(tr);
  //
    tr=createTR();
  td=createTD();
  td.appendChild(createRadio('D',No));
  td.appendChild(createLabel(D));
  tr.appendChild(td);
  tab.appendChild(tr);
  return tab;
}
function createMTest(No,theme,score)
{
  var tab=createTable(No);
  var tr=createTR();
  var td=createTD();
  td.appendChild(createLabel(No+"题---"+theme+"---("+score+"分)"));
  tr.appendChild(td);
  tab.appendChild(tr);
  //
  tr=createTR();
  td=createTD();
  td.appendChild(createTextarea(No));
  tr.appendChild(td);
  tab.appendChild(tr);
  return tab;
}
function createTR()
{
	return document.createElement('tr');
}
function createTD()
{
	return document.createElement('td');
}
function createTable(No)
{
  var tab=document.createElement('table');
  tab.id='subject'+No;
  return tab;
}
function createRadio(values,No)
{
	var radio=document.createElement('<INPUT name=No'+No+'>');
	radio.setAttribute('type','radio');
        radio.setAttribute('value',values);
	return radio;
}
function createTextarea(No)
{
	var textarea=document.createElement('<textarea name=No'+No+'>');
	textarea.setAttribute('cols','30');
        textarea.setAttribute('rows',5);
	return textarea;
}
function createLabel (text)
{
	var label=document.createElement('label');
	label.innerText=text;
	return label;
}
var scount=0;
var sscount=0;
function adjudicate()
{
  var list=getXMLArray(xmlDoc, 'subject');
  for(var i=0;i<list.length;i++)
  {
    var obj=list[i];
    if(getValue(obj,'Test_Result')==getTagValue('subject'+(i+1)))
    {
      scount++;
      sscount+=parseInt(getValue(obj,'Test_Score'));
    }
  }
   alert("您的得分是  "+sscount+"分"+"  "+list.length+"题共答对 "+scount+"道题");
   scount=0;
   sscount=0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -