仓酷云

标题: ASP.NET网站制作之ASP.NET 2.0中完成弹窗报警提醒 [打印本页]

作者: 飘飘悠悠    时间: 2015-1-16 22:30
标题: ASP.NET网站制作之ASP.NET 2.0中完成弹窗报警提醒
不过你如果学.net的话,你就不要选os了,这课比较底层的。你可以旁听数据库加上软件构件和中间件。(webservices和面向服务的课也应该听一听)在web使用中,好比OA中,常常要用到一些提醒,好比EMAIL抵达了,就做个象MSN那样的提醒框,弹出给用户提醒,然后再封闭。在asp.net2.0的ajax中,这个如今不难做到了,恰好看到老外的一篇文章,解说到,上面小结
好比有个数据库表,是寄存EMAIL的,当数据库表中的EMAIL一有的时分,就提醒用户,起首复杂写一个WEBSERVICE以下
以下为援用的内容:
[ScriptService]
publicclassInboxService:System.Web.Services.WebService
{
[WebMethod]
publicintGetLatestNumberOfEmails()
{
intnumberOfEmails=0;
using(SqlConnectionconn=newSqlConnection(WebConfigurationManager.ConnectionStrings[0].ConnectionString))
{
using(SqlCommandcmd=newSqlCommand("GetLatestNumberOfEmails",conn))
{
cmd.CommandType=CommandType.StoredProcedure;
conn.Open();
numberOfEmails=(int)cmd.ExecuteScalar();
}
}
returnnumberOfEmails;
}
}
这里要注重要在客户端经由过程AJAX挪用WEBSERICE,要加上[ScriptService]
2在default.aspx中,起首到场一个updateprogress控件,以下
以下为援用的内容:
<asp:UpdateProgressDynamicLayout="False"ID="UpdateProgress1"runat="server">
<ProgressTemplate>
<divid="modal"class="modal">
<divclass="modalTop">
<divclass="modalTitle">MyInbox</div>
<spanstyle="CURSOR:hand"onclick="javascript:HidePopup();">

</span>
</div>
<divclass="modalBody">
Youreceived<strong><spanid="modalBody"></span></strong>Email(s).
</div>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
这里的封闭X按钮,挪用javascript的剧本,等阵再说
然后固然要加scriptmanager控件了,以下
以下为援用的内容:
<asp:ScriptManagerID="ScriptManager1"runat="server">
<Services>
<asp:ServiceReferencePath="~/InboxService.asmx"/>
</Services>
</asp:ScriptManager>

这里挪用了我们方才写的webservice
以后是写script了
以下为援用的内容:
<scripttype="text/javascript">
varnumberOfEmails_original=0;

varapp=Sys.Application;
app.add_init(applicationInitHandler);

functionapplicationInitHandler(sender,args){
InboxService.GetLatestNumberOfEmails(OnCurrentNumberOfEmailsReady);
}
起首,默许确当然是0封邮件了,有变量来寄存以后邮件数目,以后是在ajax中的初始化事务中挪用webserice的办法了,而且回调OnCurrentNumberOfEmailsReady办法,
以下为援用的内容:
functionOnCurrentNumberOfEmailsReady(result,userContext,methodName){
numberOfEmails_original=result;
//StartChecking
StartChecking();
}OnCurrentNumberOfEmailsReady办法将WEBSERVICE挪用的了局(以后形态下有几封信RESULT)前往给变量,然后挪用sartchecking()办法
functionStartChecking(){
InboxService.GetLatestNumberOfEmails(OnLastestNumberOfEmailsReady);
}
startchecking办法,持续回调OnLastestNumberOfEmailsReady办法
functionOnLastestNumberOfEmailsReady(result,userContext,methodName){
varnumberOfEmails_new=result;
if(numberOfEmails_new>numberOfEmails_original){
ShowPopup();
$get("modalBody").innerHTML=numberOfEmails_new-numberOfEmails_original;

//Updatethecounthere
numberOfEmails_original=numberOfEmails_new;
}
//Startcheckingagain
window.setTimeout(StartChecking,10000);
}

这个办法,用以后邮件数-本来邮件数,就得出新增了几封邮件了,再将了局赋值给显现地区的modalbody,而且记得把以后邮件数目的,变量更新哦(numberOfEmails_original=numberOfEmails_new;)
然后再用setimeout来设置每隔10000毫秒反省一次了
以下为援用的内容:
functionShowPopup(){
$get("UpdateProgress1").style.visibility="visible";
$get("UpdateProgress1").style.display="block";
}
functionHidePopup(){
$get("UpdateProgress1").style.visibility="hidden";
$get("UpdateProgress1").style.display="none";
}
</script>


可怜的程序员,还是逃不出移植的命运!
作者: 莫相离    时间: 2015-1-19 15:54
asp.net空间的支持有:ASP.NET1.1/虚拟目录/MicrosoftFrontPage2000扩展/CDONTS,同时他的网站上也提供了Asp.net的使用详解和程序源代码,相信对使用ASP.NET编程的程序员来说会非常有用哦!
作者: 变相怪杰    时间: 2015-1-25 22:06
众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
作者: 乐观    时间: 2015-2-9 19:04
Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。
作者: 愤怒的大鸟    时间: 2015-2-27 17:22
提供基于组件、事件驱动的可编程网络表单,大大简化了编程。还可以用ASP.NET建立网络服务。
作者: 小魔女    时间: 2015-3-9 10:22
现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。
作者: 再现理想    时间: 2015-3-16 21:40
通过这次激烈的讨论,我从大家身上学到了太多,开阔了眼界,不管是支持我的还是骂我的,都感谢你们。
作者: 冷月葬花魂    时间: 2015-3-23 03:52
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2