2006-11-04

Js 按照MVC模式制作自定义控件

来源: 蓝色理想 作者:ppanyong 评论 0 条
 
.assessmentDivLoad{...}{
background-color:#3399CC;
color:#FFFFFF;
font-weight:bolder;
}
.assessmentDivList{...}{
background-color:#666600;
color:#FFFFFF;
font-weight:bold;
}
.pass{...}{
color:#666600;
}
.nopass{...}{
color:#FF3300;
}
</style>
<script language="javascript" src="assessmentList.js"></script><!--表现层类-->
</head>

<body >
<div>测试成绩单 表现</div>
<div><script language="javascript" type="text/javascript">...
var a =new Array(0.4,0.3,0.7,1,0.1,0.3);// 这是测试用的array数据。
var testAS = new assessmentList(60,a);
testAS.build();
</script></div>
</body>
</html>

表现层创建结束。接下来是数据与控制了。

前面我们讲了表现层的制作,接下来是数据层了。我们可以把它看成是一个仓库,需要的时候就调用方法,当然在这之前我们要初始化他。

三、数据层

前面我们讲了表现层的制作,接下来是数据层了。我们可以把它看成是一个仓库,需要的时候就调用方法,当然在这之前我们要初始化他。

下面是数据层的代码:

// JavaScript Document MVC-M
//soap连接加dom分析
//要加入"ajaxrequest.js"
function assessmentListData(userName,assessmentID){
//构造
var ajaxobj = false;
this.userName = userName;
this.assessmentID=assessmentID;
var ObjSelf;
ObjSelf=this;
this.callbackdata=function(cbobj) {return;}
//
ajaxobj =new AJAXRequest; // 创建AJAX对象
ajaxobj.method="POST"; // 设置请求方式为GET
//参数
ajaxobj.content="userName=" userName "&assessmentID=" assessmentID "";
ajaxobj.url="你的web服务地址/WebService.asmx/GetResultInfo"
// 设置回调函数,输出响应内容
ajaxobj.callback=function(xmlobj) {
ObjSelf.callbackdata(parseData(xmlobj.responseText));
}
ajaxobj.send();
}
//
function parseData(str){
//生成xml
var xmlDoc = new ActiveXObject("microsoft.xmldom");
xmlDoc.async = false;
xmlDoc.loadXML(str);

var xmlElement = xmlDoc.documentElement.getElementsByTagName("NewDataSet");
//得到newdataset
var statisticalInfo = xmlElement.item(0);
var resultArray = new Array();
if(statisticalInfo!=undefined){
for(i=0;i<statisticalInfo.childNodes.length;i ){
if(statisticalInfo.childNodes.item(i).nodeName=="Table1"){
resultArray.push(statisticalInfo.childNodes.item(i).childNodes.item(1).text);
}
}
}
return resultArray;
}

在这里我用了一个别人写好的 ajax调用webservice的类,他的名字是AJAXRequest。使用方法很简单。ajaxobj.callback事件就是在得到结果时调用的。同样我们将这个事件映射到assessmentListData.callbackdata的事件上。
共4页: 上一页 [1] [2] 3 [4] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:Bad Tags — 有害的标签  
下一篇:一段非常简单的让图片自动切换js代码
    评论加载中…

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号