个人博客管理系统web课程设计_第1页
个人博客管理系统web课程设计_第2页
个人博客管理系统web课程设计_第3页
个人博客管理系统web课程设计_第4页
个人博客管理系统web课程设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录 1. 系统应用背景 .1 2. 系统分析 .2 2.1. 系统功能分析 .2 2.2. 系统模块分析 .3 2.2.1. 博客注册登录管理模块 .3 2.2.2. 博客及文章检索查询模块 .3 2.2.3. 博客页面显示模块 .4 2.3. 博客个人管理维护模块 .4 3. 系统设计 .5 3.1. 数据库设计 .5 3.1.1. 数据库需求分析 .5 3.1.2. 数据表设计 .5 3.2. 界面设计及主要代码 .7 3.2.1. 文章信息管理界面 .8 3.2.2. 博客文章信息修改 .13 3.2.3. 博客文章添加 .16 3.2.4. 文章类别管理页面 .19 3.2.5. 管理员首页页面 .26 4. 总结 .30 4.1. 不足之处与改进 .30 4.2. 心得体会 .30 5. 参考文献 .31 Web 程序设计课程设计 1 1. 系统应用背景 随着计算机技术的发展和普及,blog 得到了极大的发展。Blog ,是 Web log 的简称。blog 是 一种新的生活方式、新的工作方式、新的学习方式和交流方式。它是继 E-mail、BBS、ICQ、之 后出现的第 4 种网络交流方式。Blog 主要应用于 3 个方面:一是新的人际交流方式;二是以个人 为中心的信息摘选和知识管理;三是以个人为中心的传播出版。blog 作为个人的一种学习工具, 简单易用,吸引人的兴趣。Blog 在教育方面得到了很大的发展,它将互联网从过去的通讯功能, 资料功能、交流功能等进一步强化,使其更加个性化、开放化、实时化、全球化,把信息共享发 展到资源共享、思想共享、生命历程共享。Blog 已经成为一种继课件、积件、资源库、教育主题 网站等信息化教学模式之后,新的网络应用模式。它是应时代的需求而兴起的,也是应时代需求 不断进步的1。 博客的精神是:自由表达,开放宽容,个性张扬,专业精神。 在没有自己的博客之前,人们会经常进出于论坛发表贴子或者通过即时通信软件聊天,来表 达自已的想法,可是这些都是零散的和杂乱的。博客的出现,让人们可以不断的把自己以前的和 每天激发的一些想法或者感受整理放在自己的博客上,每次在写文章的时候,可能又会产生新的 想法。虽然一些想法一些思考只是皮毛,没有什么深度,但是当下笔去写的时候每次都会对某个 小小的问题有了更多的一点点思考,再写博客的时候就感觉到了一种满足感,一种想法得以释放 思考得以延伸的满足感。生活中每天的一个小小的事情都会引起人们的思考,甚至是和朋友的聊 天中一个小小的火花迸发。督促自己努力、把一时的想法变成观点,争取在生命中的每天里留下 点什么,这也是人们写博客的目的之一。这样就能督促自己每一天不要浑浑噩噩,时光流逝无痕 无声无息,写博客也是在自己的每一天上留下了一道浅浅的思考和划痕。 不仅如此,通过写博客、记录自己的想法可以帮助实现如下这些目的: a)记录生活,在自己的每一天上留下思考的划痕。 b)整理思路,固化知识,获得更多更好的想法。 c)分享,将自己的想法、经验与人分享。 d)交流、提高,通过交流产生更多的思维火花,相互提高。 e)交友,互相鼓励,一路同行。 如果说博客网站是一个舞台,那么所有的博客都是其中的舞者,把自己有价值的真实的一面 展示在网络世界中,相互交流沟通; 如果博客仅仅为了写日志,那么博客是一面镜子,镜子中展 2 现的是真实的自己;如果博客是一个自由媒体,可以把自身感觉有价值的信息通过博客这个工具 发布,与网友共享2。 2. 系统分析 2.1. 系统功能分析 系统功能模块包括两大块:管理界面功能模块和普通用户界面功能模块。其具体功能如下所 示: *管理员功能:分类管理,文章管理,评论管理,链接管理,留言管理。 *普通用户功能:阅读文章,留言,评论和在线聊天。 *分类管理:文章类型的添加,修改,删除。 *文章管理:文章的修改,删除。 *评论管理:评论的删除。 *链接管理:链接的添加和删除。 *留言管理:留言的删除和回复。 *管理员用户功能图如 图表 2-1 所示: 博 客 管 理 员个 人 信 息 管 理 日 志 管 理 评 论 管 理 留 言 管 理 分 类 管 理 登陆 注册 修改个人信息 撰写日志 删除日志修改日志 删除评论回复评论 删除留言回复留言 添加分类 删除分类修改分类 图表 2-1 管理员用户功能图 *普通用户功能图如 图表 2-2 所示: Web 程序设计课程设计 3 图表 2-2 普通用户功能图 2.2. 系统模块分析 博客信息管理系统分为面向网络用户的前台及面向个人博客维护管理的后台,依据博客网站 中所要实现的基本功能的设定,将所有功能分解为如下四个主要的功能模块来加以实现。用户以 合法的用户名及密码登录,系统即可按该登录用户的权限分配操作模块。 2.2.1. 博客注册登录管理模块 博客注册登录管理模块用于建立博客网站固定的客户群体,通过记录对应的博客档案,实现 对博客信息的后台维护及管理,同时也便于通过博客档案库将网站最新动态及相关企业的信息方 便地传达给每一位潜在的客户。该功能模块实现了以下几个子功能3。 a)新博客在线注册。 b)博客登录管理。 c)跳转到博客主页。 只有进行登录并通过身份验证的用户,才可以在个人博客页面发表日志,并借助个人设置实 现对个人博客相关信息的管理维护。对于没有经过身份验证的网络用户不允许在博客页面中发表 日志,更不允许对博客页面信息进行管理维护。 该模块实现新博客的注册及登录验证功能。其中,注册新博客时会对用户输入的注册信息进 行有效性验证,包括基本数据格式的有效性以及逻辑有效性,例如,用户名被占用时将及时给出 提示。注册成功的博客登录时,会随时根据博客输入的登录信息进行提示,如用户名错误或者密 码错误。 2.2.2. 博客及文章检索查询模块 博客及文章检索查询模块为网络用户提供便捷的搜索,以及日志阅读浏览等功能,同时对日 4 志的评论信息、博客推荐也能够及时反馈给网络用户。 该功能模块实现了以下几个子功能。 a)热门博客页面推荐。 b)最新博客日志推荐。 c)日志信息关键字搜索。 该模块能够在网页中随时提供在线的最新日志信息。该信息需要定期更新,网络用户可以随 时获得最新日志以及最热门的博客推荐。在客户选择了某个博客或者某个感兴趣的日志后,可以 方便地跳转到对应博客页面进行日志的阅读,并和博客进行交流互动。 2.2.3. 博客页面显示模块 为了使网络用户尽快定位到所需的博客资料及日志信息,本模块提供了搜索功能,用户可以 对所关注的日志信息按照标题进行关键字搜索,以避免用户浏览多个页面来寻找所需的日志信息 4。当网络用户进入某个人博客主页后,在该页面中将提供博客日志列表的显示,同时为了方便 用户浏览,在该模块中提供根据分类名进行日志列表的显示,也提供日志评论的浏览,此外还允 许用户在博客页面中发表评论及留言。 该功能模块实现了如下几个子功能。 a)用户可以分页查看对应的日志内容及评论信息。 b)用户可以针对日志内容发表评论。 c)用户可以针对博客进行留言。 d)用户可以分类查看日志内容。 在该模块中还提供了博客页面统计信息,日志、评论及留言信息分页显示等方便用户的显示 效果。 2.3. 博客个人管理维护模块 博客个人维护管理模块用于实现用户对博客个人主页及相关信息的动态管理。 该功能模块实现了如下几个子功能: a)日志及日志分类管理。 b)评论及留言管理。 c)个人基本信息维护管理。 借助该模块,用户可以随时对个人博客主页中的内容进行增加或修改,包括日志分类信息的 Web 程序设计课程设计 5 更新、评论及留言管理等功能,也允许用户对博客的个人信息进行维护及其管理。 3. 系统设计 3.1. 数据库设计 3.1.1. 数据库需求分析 用户分为普通用户和管理员用户 *管理员涉及类型管理、文章管理、添加文章、评论管理、链接管理、留言管理。 *普通用户可以阅读文章、发表回应、留言、评论。 一种文章类型有多篇文章。 一篇文章有多篇评论、回复。 对上面系统功能分析,设计如下数据项: *管理员信息:用户名、密码。 *类型信息:类型编号、类型名称。 *链接:链接编号、链接名称、链接地址。 *留言:留言编号、留言人呢称、留言标题、个人主页、留言内容、留言时间、留言回复。 *文章信息:文章序号、文章作者、文章标题、摘要、文章内容、文章发表日期、文章人气、 回复、文章类型编号、文章类型名称、文章回复数。 *评论:评论序号、评论用户呢称、评论标题、评论内容、评论时间、评论的文章序号。 3.1.2. 数据表设计 表格 3-1 ST_admin(用户表) 序号 列名 数据类型 长度 字段说明 1 ST_admin_user Nvarchar 50 管理员 ID 2 ST_admin_psw Nvarchar 50 管理员密码 该表为管理员登录的信息表,本系统没有包含管理员用户的注册模块,管理员帐号直接在数 据库中设计。普通用户匿名登录主页。 表格 3-2 ST_class(类型信息表) 序号 列名 数据类型 长度 字段说明 6 1 ST_c_id Bigint 8 文章类型号 2 ST_c_name Nvarchar 50 文章类型名 该表用来记录文章类型的相关信息,系统文章分了类别,使管理文章,查看文章都变的非常 的方便。 表格 3-3 ST_link(链接信息表) 序号 列名 数据类型 长度 字段说明 1 ST_l_id Bigint 8 链接号 2 ST_l_name Nvarchar 50 链接名 3 ST_l_url Nvarchar 50 链接地址 该表记录了链接的相关信息,方便用户快速的链接到想浏览的网站,提高了用户的操作效率。 表格 3-4 ST_message(留言信息表) 序号 列名 数据类型 长度 字段说明 1 ST_id Bigint 8 留言号 2 ST_nickname Nvarchar 50 网友呢称 3 ST_title Nvarchar 50 留言标题 4 ST_homepage Nvarchar 50 个人主页 5 ST_content Ntext 16 留言内容 6 ST_mdate Datetime 8 留言时间 7 ST_hf Ntext 16 留言回复 该表包含了留言的相关信息,留言模块方便普通用户和版主之间的交流,为他们提供了一个 专门的途径。 表格 3-5 ST_news(文章信息表) Web 程序设计课程设计 7 该表为文章信息表,包含了文章的相关属性,用来记录文章信息。该模块可以帮助用户了解 文章的基本信息。比如:文章人气高可能是内容很有意义,方便用户去阅读那些比较好的文章。 表格 3-6 ST_replay(评论信息表) 序号 列名 数据类型 长度 字段说明 1 ST_r_id Bigint 8 评论号 2 ST_r_nick Nvarchar 50 呢称 3 ST_r_title Nvarchar 50 评论标题 4 ST_r_content Nvarchar 250 评论内容 5 ST_r_date Datetime 8 评论发表时间 6 ST_n_id Int 4 评论文章编号 3.2. 界面设计及主要代码 此表为评论信息表,用来记录评论信息。评论也是用户的一种交流方式。该模块加强了用户 之间的沟通5。 序号 列名 数据类型 长度 字段说明 1 ST_n_id Bigint 4 文章号 2 ST_n_author Nvarchar 50 文章作者 3 ST_n_title Nvarchar 200 文章标题 4 ST_n_key Nvarchar 200 文章摘要 5 ST_n_content Ntext 16 文章内容 6 ST_n_date Datetime 8 文章发表日期 7 ST_n_re Bigint 8 文章回复 8 ST_c_id Bigint 8 文章类型编号 9 ST_c_name Nvarchar 50 文章类型名称 10 ST_n_iscmd int 4 文章回复数 8 3.2.1. 文章信息管理界面 文章管理页图如下所示: 图表 3-1 文章管理 编写后台事件处理页面 ArticleManage.aspx.cs,实现数据的查询、修改、删除和添加文章的功 能。在页面加载事件中调用 ST_Article_Bind 方法,从数据库中获取文章信息并绑定 GridView 控 件。 单击 ArticleManage.aspx 页面中的“查找” 、按钮,触发 Click 事件。 具体代码如下: public partial class Module_Blog_ArticleManage : System.Web.UI.Page SqlData da = new SqlData(); SqlConnection mycon; private static string ID; protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) Web 程序设计课程设计 9 /调用自定义绑定方法绑定数据 ST_Article_Bind(); /*判断是否登录 */ ST_check_Login(); string ST_dns = ConfigurationSettings.AppSettings“conStr“; mycon = new SqlConnection(ST_dns); DataSet mydataset = new DataSet(); SqlDataAdapter mydataadapter1 = new SqlDataAdapter(“select * from tb_Blog where UserName=“ + Session“UserName“ + “, mycon); mydataadapter1.Fill(mydataset, “tb_Blog“); DataRowView rowview1 = mydataset.Tables“tb_Blog“.DefaultView0; ID = rowview1“BlogID“.ToString(); public void ST_check_Login() if (Session“UserName“ = null) Response.Write(“alert(对不起!您还不是管理员,请先注册再登录!); location=/BlogIndex.aspx“); Response.End(); public void ST_Article_Bind() string sqlstr = “select * from ST_news where BlogID=“ + ID + “; /调用公共类中的ExceDS方法,返回一个DataSet类型的数据集,并作为GridView控件的 数据源 10 GridView1.DataSource = da.ExceDS(sqlstr); GridView1.DataKeyNames = new string “ST_n_id“ ; GridView1.DataBind(); protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) SqlData da = new SqlData(); bool delete = da.ExceSQL(“delete from ST_news where ST_n_id=“ + GridView1.DataKeyse.RowIndex.Value + “); if (delete) Response.Write(“alert(删除成功!); location=ArticleManage.aspx“); else Response.Write(“alert(删除失败!); location=ArticleManage.aspx“); protected void btnSearch_Click(object sender, EventArgs e) SqlData da = new SqlData(); string search = this.ddlSearch.SelectedValue; switch (search) case “文章ID“ : da.BindData(this.GridView1, “Select * From ST_news Where ST_n_id Like %“ Web 程序设计课程设计 11 + this.txtKey.Text + “% and BlogID=“ + ID + “); break; case “文章主题“ : da.BindData(this.GridView1, “Select * From ST_news Where ST_n_title Like %“ + this.txtKey.Text + “% and BlogID=“ + ID + “); break; default: Response.Write(“alert(查询失败!); location=javascript:history.go(-1)“); break; protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) GridView1.PageIndex = e.NewPageIndex; ST_Article_Bind(); protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlRowType.DataRow) if (e.Row.Cells1.Text).Length 5) e.Row.Cells1.Text = (e.Row.Cells1.Text).Substring(0, 5) + “; (LinkButton)e.Row.Cells5.Controls0).Attributes.Add(“onclick“, “return confirm(确定 要删除吗?)“); 12 protected void CheckBox2_CheckedChanged(object sender, EventArgs e) for(int i=0; ialert(批量删除成功!); Web 程序设计课程设计 13 location=ArticleManage.aspx“); protected void Button1_Click(object sender, EventArgs e) CheckBox2.Checked = false; for (int i = 0; i alert(修改成功!); location=ArticleManage.aspx“); else Response.Write(“alert(修改失败!);“); protected void btnBack_Click(object sender, EventArgs e) Response.Redirect(“ArticleManage.aspx“); 16 3.2.3. 博客文章添加 博客文章添加页面如下图所示: 当单机 ArticleManage.aspx 页面中的“添加新文章”超链接时,将会链接到 Blog 文件夹下的 AddArt.aspx 页面;在页面加载事件中将博客文章类型绑定到下拉列表中;单击“添加”按钮,触 发其 Click 事件,实现博客新文章的添加操作。 具体代码如下: public partial class Module_Blog_AddArt : System.Web.UI.Page SqlData mydata = new SqlData(); SqlConnection mycon; /sqlconnection是一个对象 int cbox; string ID; /定义字符串ID protected void Page_Load(object sender, EventArgs e) if (Session“UserName“ = null) /如果(会话【用户名】)为空 Response.Redirect(“/BlogIndex.aspx“); /页面重定向 Web 程序设计课程设计 17 SqlConnection mycon = new SqlConnection(ConfigurationManager.AppSettings“conStr“); mycon.Open();/连接数据库mycon。Open() DataSet mydataset = new DataSet(); SqlDataAdapter mydataadapter = new SqlDataAdapter(“select * from tb_Blog where UserName=“ + Session“UserName“ + “, mycon);/SqlDataadapter是一个对象。SqlDataAdapter 是 DataSet和 SQL Server之间的桥接器,用于检索和保存数据。 mydataadapter.Fill(mydataset, “tb_Blog“);/填充数据集,使用语句填mydataset,利用查询 命令赋值。 DataRowView rowview = mydataset.Tables“tb_Blog“./DefaultView0;取出来mydataset中 tb_Blog表的默认视图,其实就是datatable,然后取第0行数据,类型是 datarowview。 ID = rowview“BlogID“.ToString();/通过视图通过rowview也就是一行数据,取blogID列 的值。 /this.Label1.Text = Session“UserName“.ToString(); /SqlConnection mycon = new SqlConnection(ConfigurationManager.AppSettings“conStr“); /mycon.Open(); string sqlstr = “select * from ST_Class where BlogID=“+ID+“;/字符串sqlstr 是ST-CLASS 表 中的的博客ID SqlCommand mycom = new SqlCommand(sqlstr, mycon);/创建sqlcommand对象 SqlDataReader dr = mycom.ExecuteReader();/mycom是sqlcommand的一个实例 /判断是否有数据 while (dr.Read() DropDownList1.Items.Add(new ListItem(dr“ST_c_name“.ToString(),dr“ST_c_id“.ToString();/如果dropdownlist1已经绑定了数据, 需要将“请选择部门” 加到第一项。 protected void btnAdd_Click(object sender, EventArgs e) 18 /string ID; /SqlConnection mycon = new SqlConnection(ConfigurationManager.AppSettings“conStr“); /mycon.Open(); /DataSet mydataset = new DataSet(); /SqlDataAdapter mydataadapter = new SqlDataAdapter(“select * from tb_Blog where UserName=“ + Session“UserName“ + “, mycon); /mydataadapter.Fill(mydataset, “tb_Blog“); /DataRowView rowview = mydataset.Tables“tb_Blog“.DefaultView0; /ID = rowview“BlogID“.ToString(); /创建插入新文章信息的Sql语句 string com = “Insert into ST_news(ST_n_title,ST_n_author,ST_n_key,ST_n_content,ST_n_iscmd,ST_c_id,BlogID) values(“ + this.txtSubject.Text + “,“ + this.TextBox2.Text + “,“ + this.TextBox1.Text + “,“ + this.txtContent.Text + “,“ + cbox + “,“ + this.DropDownList1.SelectedValue + “,“ + ID + “)“; /调用公共类中的ExceSQL方法,返回一个布尔值 bool add =mydata.ExceSQL(com); if (add) Response.Write(“alert(文章添加成功!); location=ArticleManage.aspx“); else Response.Write(“alert(文章添加失败!); location=javascript:history.go(-1)“); protected void btnCancle_Click(object sender, EventArgs e) Web 程序设计课程设计 19 Response.Redirect(“ArticleManage.aspx“); protected void Button1_Click(object sender, EventArgs e) this.txtSubject.Text = “; this.TextBox2.Text = “; this.TextBox1.Text = “; this.txtContent.Text = “; protected void CheckBox1_CheckedChanged(object sender, EventArgs e) if (CheckBox1.Checked = true) cbox = 1; else cbox = 0; 3.2.4. 文章类别管理页面 博客文章类别管理页面如下图所示: 20 图表 3-3 博客文章类别管理页面图 在文章类别管理页面中,主要是对博客文章进行管理,以方便访客分类阅读发表的博客文章。 具体代码如下: public partial class Module_Admin_BlogType : System.Web.UI.Page SqlData My_sqldata = new SqlData(); SqlConnection ST_myConn; private static string ID; protected void Page_Load(object sender, EventArgs e) /建立数据库连接 string ST_dns = ConfigurationSettings.AppSettings“conStr“; ST_myConn = new SqlConnection(ST_dns); if (!IsPostBack) /调用自定义方法ST_Type_List_Bind()进行数据绑定 ST_Type_List_Bind(); /*判断是否登录*/ ST_check_Login(); DataSet mydataset = new DataSet(); Web 程序设计课程设计 21 SqlDataAdapter mydataadapter = new SqlDataAdapter(“select * from tb_Blog where UserName=“ + Session“UserName“ + “, ST_myConn); mydataadapter.Fill(mydataset, “tb_Blog“); DataRowView rowview = mydataset.Tables“tb_Blog“.DefaultView0; ID = rowview“BlogID“.ToString(); public void ST_check_Login() if (Session“UserName“ = null) Response.Write(“alert(对不起!您还不是会员,请先注册再登录!); location=/BlogIndex.aspx“); Response.End(); /加载文章类型的信息 public void ST_Type_List_Bind() string sqlstr = “select * from ST_class where BlogID=“ + ID + “; /调用公共类中的ExceDS() 方法,用来返回一个DataSet 类型 My_sqldata.ExceDS(sqlstr); /获取数据表中的主键字段 ClassList.DataKeyNames = new string “ST_c_id“ ; ClassList.DataSource = My_sqldata.ExceDS(sqlstr); ClassList.DataBind(); 22 protected void btmAdd_Click(object sender, EventArgs e) ST_myConn.Open(); if (this.typename.Text != “) string sqlstr1 = “select count(*) from ST_class where ST_c_name=“ + typename.Text.ToString() + “and BlogID=“+ID+“; SqlCommand mycom = new SqlCommand(sqlstr1, ST_myConn); int intcount = Convert.ToInt32(mycom.ExecuteScalar(); if (intcount 0) Response.Write(“alert(对不起!不允许添加相同记录!); location=BlogType.aspx“); else string ST_sql = “insert into ST_class (ST_c_name,BlogID) values (“ + typename.Text.ToString() + “,“+ID+“)“; My_sqldata.ExceSQL(ST_sql); Response.Write(“alert(添加成功!);location=BlogType.aspx“); /SqlData da = new SqlData(); /da.BindData(this.ClassList, “Select * From ST_class Where ST_c_id Like %“ + this.txtKey.Text + “%and BlogID=“ + ID + “); protected void ClassList_RowDeleting(object sender, GridViewDeleteEventArgs e) string sqlstr = “delete from ST_class where ST_c_id=“ + Web 程序设计课程设计 23 ClassList.DataKeyse.RowIndex.Value.ToString() + “; /调用公共类中的ExceSQL方法执行SQL语句 My_sqldata.ExceSQL(sqlstr); ST_Type_List_Bind(); protected void ClassList_RowEditing(object sender, GridViewEditEventArgs e) ClassList.EditIndex = e.NewEditIndex; ST_Type_List_Bind(); protected void ClassList_RowUpdating(object sender, GridViewUpdateEventArgs e) string sqlstr0 = “update ST_class set ST_c_name=“ + (TextBox)(ClassList.Rowse.RowIndex.Cells2.Controls0).Text.ToString().Trim() + “where ST_c_id=“ + ClassList.DataKeyse.RowIndex.Value.ToString() + “; /调用公共类中的ExceSQL方法执行SQL语句 My_sqldata.ExceSQL(sqlstr0); ClassList.EditIndex = -1; ST_Type_List_Bind(); protected void ClassList_RowCancetingEdit(object sender, GridViewCancelEditEventArgs e) ClassList.EditIndex = -1; ST_Type_List_Bind(); 24 protected void btnSearch_Click(object sender, EventArgs e) SqlData da = new SqlData(); string search = this.ddlSelect.SelectedValue; switch (search) case “文章编号“ : da.BindData(this.ClassList, “Select * From ST_class Where ST_c_id Like %“ + this.txtKey.Text + “%and BlogID=“ + ID + “); break; case “文章类型“ : da.BindData(this.ClassList, “Select * From ST_class Where ST_c_name Like %“ + this.txtKey.Text + “%and BlogID=“ + ID + “); break; default: Response.Write(“alert(出错啦!); location=javascript:history.go(-1)“); break; protected void CheckBox2_CheckedChanged(object sender, EventArgs e) for

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论