`
isiqi
  • 浏览: 16035774 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

asp.net常用代碼

阅读更多

1.弹出对话框.
a. 弹出对话框:

C# codeClientScript.RegisterStartupScript(this.GetType(), "",

"<script>window.alert('该会员没有提交申请,请重新提交!')</script>");


b.转向指定页面

C# code Response.Write("

<script>window.location='http://www.gongxinkang.com.cn'

</script>");//window.location.href也可以


c. 打开新的浏览器窗口

C# codeResponse.Write(" <script>window.open

('http://www.gongxinkang.com.cn/index.aspx') </script>");


d.确认是否删除

HTML code<asp:Button ID="Button1" runat="server" Text="Button"

OnClientClick="return confirm('确认是否删除?')" />


或者

C# code Button1.Attributes.Add("OnClick", "return window.confirm('确认

是否删除?')")

OnClientClick 属性来指定在引发某个 Button 控件的 Click 事件时所

执行的附加客户端脚本。return window.confirm('确认是否删除?')返回值如果

为false,就不会执行提交表单到服务器的脚本命令。
Response.Write 中的javascript 总是发生在

ClientScript.RegisterStartupScript中的javascript 之前,我是这么理解:
1. ClientScript.RegisterStartupScript 用于添加在页面 </form>之前

添加javascript脚本,可以确定服务器端 <form>标签的所有html元素 都已经创

建出来。
2.Response.Write将信息写入 HTTP 响应输出流,你会发现平时

Response.Write的内容总是在页面顶端,html元素 都还没有已经创建出来。
2. 删除文件

C# codestring filename ="aa.txt";
System.IO.File.Delete(Server.MapPath("~/aa.txt"));


3.绑定下拉列表框

C# code Dictionary<string, int> dic = new Dictionary<string, int>();
dic.Add("请选择", -1);
dic.Add("aa",0);
dic.Add("eew",2);
DropDownList1.DataSource=dic;
DropDownList1.DataTextField="key";
DropDownList1.DataValueField="value";
DropDownList1.DataBind();


4.时间格式化
Label1.Text = DateTime.Now.ToString("T");
/*格式化日期
* d :08/17/2000
D :Thursday, August 17, 2000
f :Thursday, August 17, 2000 16:32
F :Thursday, August 17, 2000 16:32:32
g :08/17/2000 16:32
G :08/17/2000 16:32:32
m :August 17
r :Thu, 17 Aug 2000 23:32:32 GMT
s :2000-08-17T16:32:32
t :16:32
T :16:32:32
u :2000-08-17 23:32:32Z
U :Thursday, August 17, 2000 23:32:32
y :August, 2000
dddd, MMMM dd yyyy :Thursday, August 17 2000
ddd, MMM d "'"yy :Thu, Aug 17 '00
dddd, MMMM dd :Thursday, August 17
M/yy :8/00
dd-MM-yy :17-08-00 */
5.数字格式化:

C# code int i=123456;
string s=i.ToString("###,###.00");
Response.Write(s);

6.提取动态网页内容

C# code Uri uri = new Uri("http://www.51aspx.com/");
WebRequest req = WebRequest.Create(uri);
WebResponse resp = req.GetResponse();
Stream str = resp.GetResponseStream();
StreamReader sr = new StreamReader(str,

System.Text.Encoding.Default);
string t = sr.ReadToEnd();
this.Response.Write(t.ToString());


7.获取" . "后面的字符

C# codestring i = "32432.32432";
i= i.ToString().Trim().Substring(i.ToString().Trim

().LastIndexOf(".") + 1);
Label1.Text = i;


8.gridview控件

HTML code<asp:GridView AutoGenerateColumns="false"

DataSourceID="SqlDataSource1" ID="GridView1"
runat="server" OnRowCommand="GridView1_RowCommand"

OnRowCreated="GridView1_RowCreated"
OnRowDataBound="GridView1_RowDataBound">
<Columns>
<asp:BoundField HeaderText="ID" DataField="topicid"

/>
<asp:BoundField HeaderText="title"

DataField="topictitle" />
<asp:BoundField HeaderText="time"

DataField="topiccreatetime" />
<asp:TemplateField>
<ItemTemplate>
<input id="Button2" onclick="change(this)"

value="点击改变" />
</ItemTemplate>
</asp:TemplateField>
<asp:ButtonField Text="删除" CommandName="del" />
<asp:HyperLinkField NavigateUrl="~/index.aspx"

DataTextField="topictitle" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"

SelectCommand="select topicid,topictitle ,topiccreatetime from tbtopic"
ConnectionString="<%$ ConnectionStrings:melon23 %>">
<SelectParameters>
</SelectParameters>
</asp:SqlDataSource>

a.点击改变字段的值:

HTML code<script type="text/javascript">
function change(obj)
{

obj.parentNode.previousSibling.innerHTML="change";//firefox 不支持

innerText 它们都不是DOM标准的一部分

}

</script>

b.删除确认:
HTML code<asp:LinkButton ID="LinkButton1" runat="server"

CausesValidation="False" CommandName="Delete"
OnClientClick="return confirm('确定要删除吗?')"

Text="删除"></asp:LinkButton>


或者

(看页面控件树 <%@ Page Trace="true" %>,确认要找的控件类型)

C# code protected void GridView1_RowCreated(object sender,

GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow) //判断是否为

数据行,要不有可能是标题行,执行会出错。
{
TableCell myTableCell = (TableCell)e.Row.Controls[4];
LinkButton btn = (LinkButton)myTableCell.Controls[0];
btn.Attributes.Add("onclick", "return window.confirm('您是否确定

要删除这条信息')");

}
}

c 行变色


C# codeprotected void GridView1_RowDataBound(object sender,

GridViewRowEventArgs e)
{

if (e.Row.RowType == DataControlRowType.DataRow) //判断是否为

数据行,要不有可能是标题行,执行会出错。
{

e.Row.Attributes.Add

("onclick","this.style.backgroundColor='#35dd23';"); //点击变色
e.Row.Attributes.Add

("onmouseover","this.style.backgroundColor='#99cc00';this.style.color='

fff';this.style.cursor='default';");//经过变色
e.Row.Attributes.Add

("onmouseout","this.style.backgroundColor='';this.style.color='';");//

恢复颜色
}
}


9.错误提示:从客户端(TextBox1="dsfgdsf <br/>sfd")中检测到有潜在危险的

Request.Form 值.

 只通过设置 validateRequest=false你的站点很容易引发跨站脚本攻击。
来自:

http://hi.baidu.com/wyd45123/blog/item/0376ae17a331b80dc83d6d61.html
第一步: <pages validateRequest="false" />
第二步:Page.Server.HtmlEncode( TextBox1.Text)将其中的HTML标签彻底禁止.
第三步:我们再对我们所感兴趣的、并且是安全标签,通过Replace()进行替换:

C# codeStringBuilder sb = new StringBuilder(
HttpUtility.HtmlEncode(htmlInputTxt.Text));
// 然后我们选择性的允许<b> 和 <i>
sb.Replace("&lt;b&gt;", "<b>");
sb.Replace("&lt;/b&gt;", "");
sb.Replace("&lt;i&gt;", "<i>");
sb.Replace("&lt;/i&gt;", "");
Response.Write(sb.ToString());

10、div内英文数字字符过长时如何自动分行
1.在ie中IE里用word-wrap:break-word;width:240px;就可以解决了。 记住:这

只是ie的用法,word-wrap:break-word没有通过W3C认证,不是标准的css。
2.要在ie、firefox中实现要用到javascript:(注:用时在遇到长英文字母时会

有空格出现,希望高手有更好的方法)

HTML code<body class="home" onload="toBreakWord(70)">
<script language="javascript" type="text/javascript">
function toBreakWord(intLen){
var obj=document.getElementById("change");
var strContent=obj.innerHTML;
var strTemp="";
while(strContent.length>intLen){
strTemp+=strContent.substr(0,intLen)+"&#10;";
strContent=strContent.substr(intLen,strContent.length);
}
strTemp+="&#10;"+strContent;
obj.innerHTML=strTemp;
}
</script>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics