《使用js动态调用数据库的值在前台显示》由会员分享,可在线阅读,更多相关《使用js动态调用数据库的值在前台显示(5页珍藏版)》请在金锄头文库上搜索。
1、使用 JS动态调用数据库的值在前台显示使用 JS动态调用数据库的值在前台显示这几天在做一个网上考试系统,学生通过前台登录考试时需要动态从数据库中读取本科科目考试的时间,以此来限制学生考试的时间。 通过查阅资料,可以实现JS来实现倒计时,但是只能静态绑定。如果用JS从数据库读取数据则很麻烦,具体的做法我没有查阅,有兴趣的朋友可以使用AJAX读取数据库中然后做倒计时。我还想到一个办法就是在页面加载的时候,将待考试的科目时间绑定到一个TextBox中,然后用getElementById读取出其value的值:var Time=document.getElementById(lbshowTime).v
2、alue;window.alert(注意考试时间为:+ Time);aspx中但是根本显示不出来数据,我想加载页面的时候是先执行JS,然后在执行Page_Load事件,所以getElementById读取出来的时间为空的; 然而当我绑定完数据后,即在Page_Load先给TextBox绑定考试的时间,然后在前台页面添加一个Button ,触发JS中的事件,通过getElementById却能得到读取出来的数据;其代码如下:Js: 无标题页 function a() var getTime=document.getElementById(lbshowTime); window.alert(注意考
3、试时间为:+Time); 前台页面:selectPaper.aspx 请选择要考试的科目: 时间: 分数: 当页面加载时,已经在后台文件中给TextBox绑定了 时间:此时我就想,能不能将该页面读取出来的数据像.net中的session 或者cookie那样先存放这个时间,跳转到另一页面时直接调用,此时也等于间接的完成了从数据库中读取时间并且进行倒计时;于是在上面的JS中将读取出来的时间赋给一个document.cookie:document.cookie=getTime.value;在另一个页面读取出来document.cookie的值再设置倒计时,其代码如下: var endTime =n
4、ew Date(); var a; function a() var a =document.cookie; window.alert(a); endTime=endTime.getTime()+a*60*1000; window.alert(endTime); GetRTime();function GetRTime()var NowTime = new Date();var nMS =endTime - NowTime.getTime();/var nD =Math.floor(nMS/(1000 * 60 * 60 * 24);var nH=Math.floor(nMS/(1000*60
5、*60) % 24;var nM=Math.floor(nMS/(1000*60) % 60;var nS=Math.floor(nMS/1000) % 60;/document.getElementById(RemainD).innerHTML=nD;document.getElementById(RemainH).innerHTML=nH;document.getElementById(RemainM).innerHTML=nM;document.getElementById(RemainS).innerHTML=nS;if(nMS=59*60*1000)alert(还有最后五分钟!);/
6、时间到后自动提交后台页面的事件document.all.Button1.click();_doPostBack(Button1,);window.open(); a =setTimeout(GetRTime(),1000); window.onload=a; 倒计时还有:XX时XX分XX秒这样就完成了动态从数据库中读取考试时间,然后设置倒计时的时间,可能还有其它的方法,比如用JS直接从数据库中读取数据,但是我想这可能比较麻烦,感兴趣的自己查阅资料,好像不是很多,但是baidu上还是有的。本来是做个系统练习一下的,没想到还真遇上了问题,我查了三天资料才搞出来的,可能方法也不是什么好办法,但是实现了我的功能,收获还是有的。通过这几天的学习,遇到了问题只要肯下功夫还是能解决的,借51宝地一用,一起学习。呵呵。有什么好建议的还请给出好的意见