论坛项目中的学习
来源:互联网 发布:淘宝直通车任务怎么做 编辑:程序博客网 时间:2024/05/22 09:47
第一次做项目,学习到的有很多。即总结了一下,具体如下:
一、如何实现不同的内容在不同的页面显示:
1、使用 Session类可以保存内容,使内容在不同页面使用,例如: Session[“ aaaa”]=Lable.Text;即在不同页面都可访问Lable的值。
2、 ViewState类也可以,使用方法相似。但 ViewState只可以在同一页面使用。
3、a) 在URL中写入参数,即在转到一个页面时或超连接时写入参数。
例如: Response.Redirect("Login.aspx?from=article"); 跳转到Login.aspx页面,并传参数from=article;
string from = Request.QueryString["from"]; 在Login.aspx页面获取到另一个页面中的from参数。
if (from == "index")
{
Response.Redirect("WebIndex.aspx");
}
参数可以不同,并且可以绑定数据库中的数据
<a href="ArticleInfo.aspx?articid=<%#Eval("ArticleId")%>"> 超链接,articid是参数,后面是具体的数值。
b) 还可以传递多个参数 string articleid = Request.QueryString["articleid"]; 获取此页中articleid的值
this.Label1.Text = "要想留言请先登录<a href=Login.aspx?from=articleinfo&id=" + articleid + ">登录</a>";登录</a> 保存此页中articleid的值,并
将它的值附给id保存。在另一个页面就可访问
二、富文本编辑(特别重要)
kindedtor使用
1.将kindeditor文件夹拷贝到网站目录下,只选择我们需要的文件夹即可,可以删除asp,jsp,php三个文件夹,还有一些文件可以删除,但是没不要
2.添加对LitJSON.dll的引用,此文件默认在asp.net文件夹下bin文件夹下。//如果图片上传不去
3.新建自己的页面
4.将asp.net文件夹下的demo页面的内容拷贝过来,注意js文件以及css文件的引用位置是否发生变化
在web页面顶部的page标签中添加ValidateRequest="false"属性 //出现错误提示
在webconfig中添加<httpRuntime requestValidationMode="2.0"/>
5.将"label1"的visible属性设置false(目的是让从后来赋给内容不显示),此控件存在的唯一目的就是解决html编码的问题。因为默认我们从kindeditor中获取的内容中的html标签,如"<"等都已经被编码,这导致内容再次发送到前台后无法原样显示。
6.更改asp.net文件夹下的upload_json.ashx文件的内容,自定义上传文件的存储位置。方法是将第1行和第2行
String savePath = "../attached/";
String saveUrl = aspxUrl + "../attached/";
中的attached更改为自己创建的文件夹,如String savePath = "../upload/";
7.在此文件中还可控制上传文件的类型及大小等
8.在web页面中的Page_Load事件中添加如下代码
this.Label1.Text = Request.Form["content1"];
9.编写Button1按钮的单击事件,保存用户输入的内容,如写入文件或插入数据库
其中获取kindeditor内容应使用label1.text的方式获取,这样获取的是带有原样html标签的内容。
10.在kindeditor中设置宽度和高度以及不允许拖动改变大小
在K.options = {
中resizeType : 属性的值设置为0则不能拖动
三、数据绑定控件
GridView、DataList、Repeater控件,功能以此减小,灵活以此增加。最后翻译出的HTML均是Table控件。
Repeater控件:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<a href="ArticleInfo.aspx?articleid=<%#Eval("ArticleId")%>"><%#Eval("ArticleTitle")%></a>
</ItemTemplate>
</asp:Repeater>
输出的内容不会自动换行,所以要手动添加块级标签,例如:div ul等
DataList控件:
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate></ItemTemplate>
</asp:DataList>
输出内容可以自动换行。
四、其它
1、层的隐藏。当将层转换为服务器控件时,会有一个属性Visible,根据它的值(true,flase)来隐藏和展现层。
2、DropDownList绑定控件。
DataTable dt = new DataTable();
com.CommandText = "select * from T_ProductStyle ";
SqlDataAdapter adapter = new SqlDataAdapter(com);
adapter.Fill(dt);
从dt中读取数据绑定到DropDownList。
并没有用add方法。
this.DropDownList1.DataSource = dt;
this.DropDownList1.DataValueField = "ProductStyleId";//绑定的字段
this.DropDownList1.DataTextField = "ProductStyleName";
this.DropDownList1.DataBind();
如果从数据库中调用即可不用add方法。
每一个数据绑定控件相同代码( this.DropDownList1.DataSource = dt;this.DropDownList1.DataBind();)
- 论坛项目中的学习
- 论坛学习
- 学习论坛
- 学习论坛
- 学习笔记13 独立出discuz 论坛中的图片上传
- 项目中的一些学习
- 论坛项目的总结
- 做项目论坛
- bbs论坛小项目
- 论坛项目记录
- OC项目-论坛
- 论坛项目感想
- itmo论坛项目总结
- BBS论坛项目 I
- MongoDB在实际项目中的应用讨论第3页: - 企业应用 - Java - ITeye论坛
- 又一个学习论坛
- 一些学习的论坛
- java学习论坛
- Python高效编程技巧
- md5加解密原理
- Centos 6.4 下安装chrome提示 libstdc++.so.6问题的解决方案
- 自己收集整理的关于 判断 网页是否加载完毕的方法(特别是多框架Frame),然后获取网页源码
- sizeof和strlen比较
- 论坛项目中的学习
- enable_irq_wake
- 一个简单的读写同步的空间解决方法
- SQLServer遍历表----慎用游标
- OCP-1Z0-053-V12.02-441题
- VC6.0 ClassView 中某些类不显示的解决方案
- 迪西客OA——国内第一款微博式OA
- 高人对libsvm的经典总结(全面至极)
- 不再饥饿营销 苹果公司一改中国内地销售策略