Web开发(网页开发)给我的第一印象就是相比于C/S(客户端/服务器)模式最大的不同之处在于页面交互层,Web(B/S)开发则体现出更强的灵活性,这也带来一定程度上的复杂度,不过还好二者之间的差异并不大,说到功能的实现上都是相近的,开发逻辑是一样的。
以下罗列的是一些新手常见问题的解决方案:(欢迎大家拍砖哦~)
1、如何排除Web页面上控件未定义问题。
*.aspx 页面上添加的控件或定义的函数,在*.aspx .cs 页面上出现未定义情况。
首先,应该将问题页重新编译一次,若错误依然,则在确认编码无误的情况下,检查相关命名空间以及类名的是否正确。
2、如何处理带链接的按钮。
添加LinkButton 按钮,其中onclick 为该按钮的click事件、OnClientClick 为click事件触发后前台响应效果.
OnClientClick=‘return confirm(“是否要真的删除该条评论!”)’
// confim是一个系统函数,信息提示。
3、substring截取字符串方法。
如:substring(0,str.LastIndexOf(“.”));
// 从0字节开始截取str字符串直到该字符串的最后一个”.”处为止。
4、页面右侧滚动条定位
设置 MaintainScrollPositionOnPostback=”true” //当页面刷新时,记录当前滚动条位置。
锚点:定位技巧。
<a href=”#com”>我要评论</a>
//带链接效果。当点击“我要评论”后,会定位至锚点。
…
…
<a name=”com”></a> //锚点
5、空格 在asp页面中如何显示
<…> </…>
6、相关文本控件的字符全选效果实现
onclick="this.Select();"
<!--js效果,onclick事件响应结果为选中所有文字—>
7、RequiredFieldValidator 控件
此控件,是用来校验数据的,校验全部提交服务器的数据,也就是校验全页面数据(有一定的局限性,可以使用ValidationGroup=".." 来类似前台单选框控件来进行分组。)。
源码:<asp:RequiredFieldValidator ID="RequiredFieldValidator1"
runat="server" ErrorMessage="请输入验证码" Text="*" ></asp:RequiredFieldValidator>
//ErrorMessage 是用来与ValidationSummary 控件联合使用的,类似msgbox提示信息。
主要是解决页面提交域的问题。
8、信息提示框
1)Response.Write("<script> alert(‘验证码输入错误’)</script>"); // 提示框背景网页为空白网页。
2)Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "
<script language='javascript' defer>alert ('验证码输入错误!');</scrip>"); //提示框背景网页为当前网页。
9、
<div id= "emptydata" class="replay" runat="server">
<p>该新闻目前暂无评论!</p></div>和
<div id= "emptydata" class="replay"><p>该新闻目前暂无评论!</p></div>
前者在后者的基础上增加了runat=”server” 后,就变成了一种控件。
此处,便是可以利用这个方便控制信息“该新闻目前暂无评论”显示了。
10、
Gridview控件的Gridline属性,控制DataTable边框值,单元格之间的网格设置。
11、
~/admin ,在asp中表示当前根目录下的admin文件夹。
../admin , 在asp中表示上一级目录下的admin文件夹。
12、
地址如此:
http://localhost:4918/searchres.aspx?key=%E5%B0%8F%E5%85%B5&%20action=bycontent
浏览器截图:
地址栏中的key值会经过一个自动的编码和解码过程。
在asp中主要通过Server.UrlDecode()进行解码、Server.UrlEncode()编码。
13、加密
Using System.Web.Security; //引入命名空间
FormsAuthentication.HashPasswordForStoringInConfigFile(string
password,string passwordFormat);
//此句代码主要用来进行加密操作。其中passwordFormat可以选择MD5等等。
14、CS1061: “ASP.admin_categorymanager_aspx”不包含“lbtnDelCa_Click”的定义,并且找不到可接受类型为 “ASP.admin_categorymanager_aspx”的第一个参数的扩展方法“lbtnDelCa_Click”(是否缺少 using 指令或程序集引用?)
起因:在asp页面编码中没有定义相应的事件过程。
解决方案:在前台代码中添加相应事件过程,也就是某控件的OnClick=“**” 与前台其事件过程要成对出现。
15、
Asp网页编码中,需要 div等块级标记进行分块区分,也就是作用域的划分非常重要,感觉c/s 的开发要比b/s 难在页面的编码上。毕竟c/s中的asp页面编码都要自己手动编写,而以往的b/s 中交互界面都经过了开发环境的前期设定。
Asp中的页面触发事件是按照冒泡型,由内部传递事件到外部顶层。
UseSubmitBehavior="false"
// 将控件设置为非提交按钮形式。(也就是单击按钮时不会进行页面提交)
16、UpdatePanel 和 ScripManager的联合应用
用于处理前台页面刷新问题,不用进行前台页面刷新就能显示即时结果。
17、
FreeTextBox 控件用在asp页面上,作为一个功能强大的文本控件。
其 ValidateRequest="true" 时,控件会对输入提交内容进行检测,禁止提交html代码,安全性稍强一些。