📄 exam_createregular.aspx
字号:
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls, Version=1.0.2.226, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Page language="c#" Codebehind="Exam_CreateRegular.aspx.cs" AutoEventWireup="false" Inherits="Web_Exam.Exam_Create" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>Exam_CreateRegular</title>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<LINK href="../style.css" type="text/css" rel="stylesheet">
<link href="../Admin_Default.css" rel="stylesheet" type="text/css" >
<meta content="BlendTrans(Duration=0.1)" http-equiv="Page-Exit" >
</HEAD>
<body>
<form name="FrmCreateRegular" onsubmit="CheckScore()" method="post">
<div>
<table id="Table7" cellSpacing="0" cellPadding="0" align="center" >
<tr>
<td align="center" width="510"><font face="宋体" color="#8a5e00">试卷规则表管理</font><font color="#8a5e00"></font></td>
</tr>
<tr>
<td width="510"><font face="宋体" color="#8a5e00"><iewc:treeview id="TreeKnowledge" runat="server"></iewc:treeview></font></td>
<tr>
<td align="center" width="510"><INPUT class="btn" name="BtnCreatePaper" id="BtnCreatePaper" onclick="CheckScore()" type="button" value="生成规则表"></FONT></td>
</tr>
<tr>
<td align="center" width="510"><asp:label id="lbl_Curnodeid" Runat="server" EnableViewState="True" Visible="False"></asp:label><asp:label id="lbl_Error" Runat="server" EnableViewState="False" Visible="True"></asp:label></td>
</tr>
</table>
</div>
<br>
<TABLE id="Table1" height="16" cellSpacing="1" cellPadding="1" align="center" border="1">
<TR>
<TD align="center">已选分数:</TD>
<TD><INPUT id="TotalScore" readOnly type="text" size="21"></TD>
</TR>
</TABLE>
</form>
<script language="javascript">
function CheckScore()
{
if(confirm('是否生成规则表?'))//弹出选择框
{
var mKey="";
var mValue="";
for(var i=0;i<myArray.length;i++)
{
if(mapHash.getObj(myArray[i])!=null & mapCheckHash.getObj(myArray[i])==1)
{
mKey+=myArray[i]+",";
mValue+=mapHash.getObj(myArray[i])+",";
}
}
document.FrmCreateRegular.action="Exam_ShowRegular.aspx?HashKey="+mKey+"&HashValue="+mValue;
document.FrmCreateRegular.submit();
//mapHash;
}
//count=0;
//ScoreCount();
}
//treeview节点checkbox点击产生的事件,
function tree_oncheck(tree)
{
var node=tree.getTreeNode(tree.clickedNodeIndex);
var Pchecked=tree.getTreeNode(tree.clickedNodeIndex).getAttribute("checked");
setcheck(node,Pchecked);
//document.all.checked.value='';
document.all.TotalScore.value='';
for (var i=0;i<myArray.length;i++)
{
mapCheckHash.setObj(myArray[i],0);//清空所有check的记录,0代表空,1代表check
}
FindCheckedFromNode(tree);
}
//给子节点赋checkbox的值
function setcheck(node,Pc)
{
var i;
var ChildNode=new Array();
ChildNode=node.getChildren();
if(parseInt(ChildNode.length)==0)
return;
else
{
for(i=0;i<ChildNode.length;i++)
{
var cNode;
cNode=ChildNode[i];
if(parseInt(cNode.getChildren().length)!=0)
setcheck(cNode,Pc);
cNode.setAttribute("Checked",Pc);
}
}
}
//查询所有已经check的节点
function FindCheckedFromNode(node)
{
var i = 0;
var nodes = new Array();
nodes = node.getChildren();
for (i = 0; i < nodes.length; i++)
{
var cNode;
cNode=nodes[i];
if (cNode.getAttribute("Checked"))
AddChecked(cNode);
if (parseInt(cNode.getChildren().length) != 0 )
{
FindCheckedFromNode(cNode);
}
}
}
//添加选中节点
function AddChecked(node)
{
var selId=node.getAttribute("NodeData");
//var temp=document.all.getElementbyname(sel2);//FrmCreateRegular.elements.sel2;
//document.all.TotalScore.value +=temp.options[temp.selectedIndex].text;
//document.all.checked.value +=selId;// node.getAttribute("NodeData");
//document.all.checked.value += ',';
CheckSave(node);
ScoreCount();
}
//保存节点的check值
function CheckSave(node)
{
var selId=node.getAttribute("NodeData");
mapCheckHash.setObj(selId,1);
}
function SelSave(selOption)
{
var selId;
var optionText;
selId=selOption.id;
optionText=selOption.options[selOption.selectedIndex].text;
//[添加值]
mapHash.setObj(selId,optionText);
//mapHash.setObj("key2","value2");
ScoreCount();
}
function checkInput(obj,max) //用于检查文本输入是否为数字,且不能大于某个数值,否则清零
{
if(obj.value.length==0)
return false;
if(obj.value<=max && obj.value>0)
{
mapHash.setObj(obj.id,obj.value);
ScoreCount();
}
//alert("您刚才输入编号为:"+obj.value);
else
{
obj.value='';
alert("您的输入不正确或超过了题库内题目数!");
obj.focus();
}
}
//得到总分
function ScoreCount()
{
//[获取值]
count=0;
document.all.TotalScore.value='';
for(var i=0;i<myArray.length;i++)
{
if(mapHash.getObj(myArray[i])!=null & mapCheckHash.getObj(myArray[i])==1)
count=eval(count)+eval(mapHash.getObj(myArray[i]));
}
document.all.TotalScore.value=count*2;
if(count*2==10)
document.getElementById("BtnCreatePaper").disabled=false;
else
document.getElementById("BtnCreatePaper").disabled=true;
}
//HashTable的定义
var HMap = function(_id)
{
this._id = _id;
this._map = {};
this.setObj = function(_key,_value)
{
this._map["_valueOf_"+_key] = _value;
}
this.getObj = function(_key){
return this._map["_valueOf_"+_key]; }
}
//计算数的节点总数,并将节点的id值赋给array数组
function NodeCount(node)
{
var i = 0;
var nodes = new Array();
nodes = node.getChildren();
for (i = 0; i < nodes.length; i++)
{
var cNode;
cNode=nodes[i];
var tmp=cNode.getAttribute("NodeData");
myArray[iLen]=cNode.getAttribute("NodeData");
iLen++;
if (parseInt(cNode.getChildren().length) != 0 )
{
NodeCount(cNode);
}
}
}
var count=0;
var iLen=0;
//[创建hmap对象]
var mapHash = new HMap("myHashTable");
var mapCheckHash=new HMap("myCheckHashTable");
var mapContentHash=new HMap("myContentHashTable");
//[创建一个动态数组]
var myArray=new Array();
document.getElementById("BtnCreatePaper").disabled=true;
NodeCount(TreeKnowledge);
</script>
</body>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -