您好,登錄后才能下訂單哦!
這篇文章主要介紹“ASP.NET常用代碼有哪些”,在日常操作中,相信很多人在ASP.NET常用代碼有哪些問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”ASP.NET常用代碼有哪些”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
17.數(shù)字格式化
【<%#Container.DataItem("price")%>的結(jié)果是500.0000,怎樣格式化為500.00?】
<%#Container.DataItem("price","{0:¥#,##0.00}")%> int i=123456; string s=i.ToString("###,###.00");
18.日期格式化
【aspx頁(yè)面內(nèi):<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date")%> 顯示為: 2004-8-11 19:44:28 我只想要:2004-8-11 】
<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-M-d}")%>
應(yīng)該如何改?
【格式化日期】
取出來(lái),一般是object((DateTime)objectFromDB).ToString("yyyy-MM-dd");
【日期的驗(yàn)證表達(dá)式】
A.以下正確的輸入格式: [2004-2-29], [2004-02-29 10:29:39 pm], [2004/12/31]
^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[1-9])|(1[0-2]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|pm]{2,2})))?$
B.以下正確的輸入格式:[0001-12-31], [9999 09 30], [2002/03/03]
^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$
【大小寫(xiě)轉(zhuǎn)換】
HttpUtility.HtmlEncode(string); HttpUtility.HtmlDecode(string)
19.如何設(shè)定全局變量
Global.asax中
Application_Start()事件中
添加Application[屬性名] = xxx;
就是你的全局變量
20.怎樣作到HyperLinkColumn生成的連接后,點(diǎn)擊連接,打開(kāi)新窗口?
HyperLinkColumn有個(gè)屬性Target,將器值設(shè)置成"_blank"即可.(Target="_blank")
【ASPNETMENU】點(diǎn)擊菜單項(xiàng)彈出新窗口
在你的menuData.xml文件的菜單項(xiàng)中加入U(xiǎn)RLTarget="_blank",如:
<?xml version="1.0" encoding="GB2312"?> <MenuData ImagesBaseURL="images/"> <MenuGroup> <MenuItem Label="內(nèi)參信息" URL="Infomation.aspx" > <MenuGroup ID="BBC"> <MenuItem Label="公告信息" URL="Infomation.aspx" URLTarget="_blank" LeftIcon="file.gif"/> <MenuItem Label="編制信息簡(jiǎn)報(bào)" URL="NewInfo.aspx" LeftIcon="file.gif" /> ......
***將你的aspnetmenu升級(jí)到1.2版
21.讀取DataGrid控件TextBox值
foreach(DataGrid dgi in yourDataGrid.Items) { TextBox tb = (TextBox)dgi.FindControl("yourTextBoxId"); tb.Text.... }
22.在DataGrid中有3個(gè)模板列包含Textbox分別為 DG_ShuLiang (數(shù)量) DG_DanJian(單價(jià)) DG_JinE(金額)分別在5.6.7列,要求在錄入數(shù)量及單價(jià)的時(shí)候自動(dòng)算出金額即:數(shù)量*單價(jià)=金額還要求錄入時(shí)限制為 數(shù)值型.我如何用客戶端腳本實(shí)現(xiàn)這個(gè)功能?
<asp:TemplateColumn HeaderText="數(shù)量"> <ItemTemplate> <asp:TextBox id="ShuLiang" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_ShuLiang")%>’ onkeyup="javascript:DoCal()" /> <asp:RegularExpressionValidator id="revS" runat="server" ControlToValidate="ShuLiang" ErrorMessage="must be integer" ValidationExpression="^\d+$" /> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText="單價(jià)"> <ItemTemplate> <asp:TextBox id="DanJian" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_DanJian")%>’ onkeyup="javascript:DoCal()" /> <asp:RegularExpressionValidator id="revS2" runat="server" ControlToValidate="DanJian" ErrorMessage="must be numeric" ValidationExpression="^\d+(\.\d*)?$" /> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText="金額"> <ItemTemplate> <asp:TextBox id="JinE" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_JinE")%>’ /> </ItemTemplate> </asp:TemplateColumn><script language="javascript"> function DoCal() { var e = event.srcElement; var row = e.parentNode.parentNode; var txts = row.all.tags("INPUT"); if (!txts.length || txts.length < 3) return; var q = txts[txts.length-3].value; var p = txts[txts.length-2].value; if (isNaN(q) || isNaN(p)) return; q = parseInt(q); p = parseFloat(p); txts[txts.length-1].value = (q * p).toFixed(2); } </script>
23.datagrid選定比較底下的行時(shí),為什么總是刷新一下,然后就滾動(dòng)到了最上面,剛才選定的行因屏幕的關(guān)系就看不到了。
page_load page.smartNavigation=true
24.在Datagrid中修改數(shù)據(jù),當(dāng)點(diǎn)擊編輯鍵時(shí),數(shù)據(jù)出現(xiàn)在文本框中,怎么控制文本框的大小 ?
private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e) { for(int i=0;i<e.Item.Cells.Count-1;i++) if(e.Item.ItemType==ListItemType.EditType) { e.Item.Cells[i].Attributes.Add("Width", "80px") } }
25.對(duì)話框
private static string ScriptBegin = "<script language=\"JavaScript\">"; private static string ScriptEnd = "</script>"; public static void ConfirmMessageBox(string PageTarget,string Content) { string ConfirmContent="var retValue=window.confirm(’"+Content+"’);"+"if(retValue){window.location=’"+PageTarget+"’;}"; ConfirmContent=ScriptBegin + ConfirmContent + ScriptEnd; Page ParameterPage = (Page)System.Web.HttpContext.Current.Handler; ParameterPage.RegisterStartupScript("confirm",ConfirmContent); //Response.Write(strScript); }
26. 將時(shí)間格式化:string aa=DateTime.Now.ToString("yyyy年MM月dd日");
1.1 取當(dāng)前年月日時(shí)分秒
currentTime=System.DateTime.Now;
1.2 取當(dāng)前年
int 年= DateTime.Now.Year;
1.3 取當(dāng)前月
int 月= DateTime.Now.Month;
1.4 取當(dāng)前日
int 日= DateTime.Now.Day;
1.5 取當(dāng)前時(shí)
int 時(shí)= DateTime.Now.Hour;
1.6 取當(dāng)前分
int 分= DateTime.Now.Minute;
1.7 取當(dāng)前秒
int 秒= DateTime.Now.Second;
1.8 取當(dāng)前毫秒
int 毫秒= DateTime.Now.Millisecond;
27.自定義分頁(yè)代碼:
先定義變量:
public static int pageCount; //總頁(yè)面數(shù) public static int curPageIndex=1; //當(dāng)前頁(yè)面
下一頁(yè):
if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1)) { DataGrid1.CurrentPageIndex += 1; curPageIndex+=1; } bind(); // DataGrid1數(shù)據(jù)綁定函數(shù) 上一頁(yè): if(DataGrid1.CurrentPageIndex >0) { DataGrid1.CurrentPageIndex += 1; curPageIndex-=1; } bind(); // DataGrid1數(shù)據(jù)綁定函數(shù) 直接頁(yè)面跳轉(zhuǎn): int a=int.Parse(JumpPage.Value.Trim());//JumpPage.Value.Trim()為跳轉(zhuǎn)值 if(a<DataGrid1.PageCount) { this.DataGrid1.CurrentPageIndex=a; } bind();
28.DataGrid使用:
添加刪除確認(rèn)也是ASP.NET常用代碼:
private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { foreach(DataGridItem di in this.DataGrid1.Items) { if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem) { ((LinkButton)di.Cells[8].Controls[0]).Attributes.Add("onclick","return confirm(’確認(rèn)刪除此項(xiàng)嗎?’);"); } } }
樣式交替:
ListItemType itemType = e.Item.ItemType; if (itemType == ListItemType.Item ) { e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor=’#FFFFFF’;"; e.Item.Attributes["onmouseover"] = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; } else if( itemType == ListItemType.AlternatingItem) { e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor=’#a0d7c4’;"; e.Item.Attributes["onmouseover"] = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ; }
添加一個(gè)編號(hào)列:
DataTable dt= c.ExecuteRtnTableForAccess(sqltxt); //執(zhí)行sql返回的DataTable DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String")); for(int i=0;i<dt.Rows.Count;i++) { dt.Rows[i]["number"]=(i+1).ToString(); } DataGrid1.DataSource=dt; DataGrid1.DataBind();
DataGrid1中添加一個(gè)CheckBox,頁(yè)面中添加一個(gè)全選框
private void CheckBox2_CheckedChanged(object sender, System.EventArgs e) { foreach(DataGridItem thisitem in DataGrid1.Items) { ((CheckBox)thisitem.Cells[0].Controls[1]).Checked=CheckBox2.Checked; } }
將當(dāng)前頁(yè)面中DataGrid1顯示的數(shù)據(jù)全部刪除
foreach(DataGridItem thisitem in DataGrid1.Items) { if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked) { string strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString(); Del (strloginid); //刪除函數(shù) } }
29.當(dāng)文件在不同目錄下,需要獲取數(shù)據(jù)庫(kù)連接字符串(如果連接字符串放在Web.config,然后在Global.asax中初始化)
在Application_Start中添加以下代碼:
Application["ConnStr"]=this.Context.Request.PhysicalApplicationPath+ConfigurationSettings. AppSettings["ConnStr"].ToString();
30.變量.ToString()
字符型轉(zhuǎn)換 轉(zhuǎn)為字符串
12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039 (16進(jìn)制)
12345.ToString("p"); //生成 1,234,500.00%
31. 變量.Substring(參數(shù)1,參數(shù)2);
截取字串的一部分,參數(shù)1為左起始位數(shù),參數(shù)2為截取幾位。 如:string s1 = str.Substring(0,2);
32.在自己的網(wǎng)站上登陸其他網(wǎng)站:(如果你的頁(yè)面是通過(guò)嵌套方式的話,因?yàn)橐粋€(gè)頁(yè)面只能有一個(gè)FORM,這時(shí)可以導(dǎo)向另外一個(gè)頁(yè)面再提交登陸信息)
<SCRIPT language="javascript"> <!-- function gook(pws) { frm.submit(); } //--> </SCRIPT> <body leftMargin="0" topMargin="0" onload="javascript:gook()" marginwidth="0" marginheight="0"> <form name="frm" action=" http://220.194.55.68:6080/login.php?retid=7259 " method="post"> <tr> <td> <input id="f_user" type="hidden" size="1" name="f_user" runat="server"> <input id="f_domain" type="hidden" size="1" name="f_domain" runat="server"> <input class="box" id="f_pass" type="hidden" size="1" name="pwshow" runat="server"> <INPUT id="lng" type="hidden" maxLength="20" size="1" value="5" name="lng"> <INPUT id="tem" type="hidden" size="1" value="2" name="tem"> </td> </tr> </form>
文本框的名稱必須是你要登陸的網(wǎng)頁(yè)上的名稱,如果源碼不行可以用vsniffer 看看。
下面是獲取用戶輸入的登陸信息的代碼:
string name; name=Request.QueryString["EmailName"]; try { int a=name.IndexOf("@",0,name.Length); f_user.Value=name.Substring(0,a); f_domain.Value=name.Substring(a+1,name.Length-(a+1)); f_pass.Value=Request.QueryString["Psw"]; } catch { Script.Alert("錯(cuò)誤的郵箱!"); Server.Transfer("index.aspx");
到此,關(guān)于“ASP.NET常用代碼有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。