日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET学习笔记 2

發布時間:2023/12/15 asp.net 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET学习笔记 2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
十、????? 關于JavaScript
-1、 使用熱鍵

?????? <body οnkeydοwn="if(event.keyCode==13)query_data()">

0、? 調用JS彈出對話框

?????? Page.Response.Write("<script language=javascript>alert('密碼錯誤!');window.history.back(-1);</script>");

?????? Page.Response.End();

1、? 調用JS程序要把"()"加上,例如:checkinput()

2、? 在HTML中調用JS的代碼片如下:

????????????? <script language="javascript">

???????????????????? function closeWnd()

???????????????????? {

??????????????????????????? window.close();

???????????????????? }

????????????? </script>

????????????? <input type="button" value='關閉' οnclick='closeWnd()'>

3、? 關于Document對象的使用:如果你的窗體(名稱是Form1)中有一個控件(名稱是Keyword)那么,引用方法為:??????????????????????? Document.form1.Keyword.value

4、? 相關示例見test_js.sln項目

5、? 使用狀態條:

????????????? <a href="tpage.htm" onMouseOver="window.status='Just another stupid link...'; return true">

????????????? input type="button" name="look" value="?" οnclick="statbar('這是狀態條喔

?????????????? (statusbar) !');">

????????????? <input type="button" name="erase" value="d)" οnclick="statbar('');">?


6、使用日期的例子:

?????? <script language="LiveScript">

?????? <!-- Hiding

???????? today = new Date()

???????? document.write("?( ??/ ",today.getHours(),":",today.getMinutes())

???????? document.write("<br>?) ?- : ", today.getMonth()+1,"/",today.getDate(),"/",today.getYear());

?????? // end hiding contents -->

?????? </script>?


7、產生隨機數

?????? <script language="LiveScript">

?????? function RandomNumber() {

???????? today = new Date();

???????? num = Math.abs(Math.sin(today.getTime()));

???????? return num;?

?????? }

?????? </script>

8、打開一個新窗口:

<SCRIPT LANGUAGE="javascript">

  <!--

  ?????? window.open ('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o, status=no') //這句要寫成一行

  -->

</SCRIPT>?

  參數解釋:
<SCRIPT LANGUAGE="javascript"> js腳本開始;

  window.open 彈出新窗口的命令;

  'page.html' 彈出窗口的文件名;

  'newwindow' 彈出窗口的名字(不是文件名),非必須,可用空''代替;

  height=100 窗口高度;

  width=400 窗口寬度;

  top=0 窗口距離屏幕上方的象素值;

  left=0 窗口距離屏幕左側的象素值;

  toolbar=no 是否顯示工具欄,yes為顯示;

  menubar,scrollbars 表示菜單欄和滾動欄。

  resizable=no 是否允許改變窗口大小,yes為允許;

  location=no 是否顯示地址欄,yes為允許;

  status=no 是否顯示狀態欄內的信息(通常是文件已經打開),yes為允許;

</SCRIPT> js腳本結束?


9、自動關閉窗口

?????? <script language="JavaScript">

  ????????????? function closeit()

  ????????????? {

  ???????????????????? setTimeout("self.close()",10000) //毫秒

  ????????????? }

  ?????? </script>

10、打開窗口之Cookies

?????? 回想一下,上面的彈出窗口雖然酷,但是有一點小毛病(沉浸在喜悅之中,一定 沒有發現吧?)比如你將上面的腳本放在一個需要頻繁經過的頁面里(例如首頁),那么每次刷新這個頁面,窗口都會彈出一次,是不是非常煩人?:-(

  有解決的辦法嗎?Yes!? Follow me.我們使用cookie來控制一下就可以了。

  首先,將如下代碼加入主頁面HTML的<HEAD>區:??


  <script>

  function openwin(){

  window.open("page.html","","width=200,height=200")

  }

  function get_cookie(Name)

??? {

  var search = Name + "="

  var returnvalue = "";

  if (document.cookie.length > 0)

?????? {

  ????????????? offset = document.cookie.indexOf(search)

  ????????????? if (offset != -1)

????????????? {

  ???????????????????? offset += search.length

  ???????????????????? end = document.cookie.indexOf(";", offset);

  ???????????????????? if (end == -1)

  ???????????????????? end = document.cookie.length;

  ???????????????????? returnvalue=unescape(document.cookie.substring(offset, end))

  ????????????? }

  ?????? }

  return returnvalue;

  }  

  function loadpopup()

??? {

  ?????? if (get_cookie('popped')=='')

?????? {

  ????????????? openwin()

  ????????????? document.cookie="popped=yes"

  ?????? }

  }

  </script>?

  然后,用<body οnlοad="loadpopup()">(注意不是openwin而是loadpop啊!)替換主頁面中原有的<BODY>這一句即可。你可以試著刷新一下這個頁面或重新進 入該頁面,窗口再也不會彈出了。真正的Pop-Only-Once!??

  寫到這里彈出窗口的制作和應用技巧基本上算是完成了!?

11、前進后退和定位

<html>

<body>

<FORM NAME="buttonbar">

???? <INPUT TYPE="button" VALUE="Back" onClick="history.back()">

???? <INPUT TYPE="button" VALUE="JS- Home" onClick="location='script.html'">

???? <INPUT TYPE="button" VALUE="Next" onCLick="history.forward()">

</FORM>

</body>

</html>

12、Cookies全部搞定

<script language="JavaScript">

<!--

var bVisitedToday = false;

var lastVisit = GetCookie("lastVisit");

if (lastVisit != null)

{

? lastVisit = 1 * lastVisit;

? var lastHere = new Date(lastVisit);?

? var rightNow = new Date();

? if(lastHere.getYear() == rightNow.getYear()

???? && lastHere.getMonth() == rightNow.getMonth()

???? && lastHere.getDate() == rightNow.getDate())

? {

???? bVisitedToday = true;

? }

}

if(bVisitedToday == false)

{

? setLastlastVisitCookie();

? window.location="http://www.thehungersite.com/"

}

else

{

? //window.location="about:blank"

}

function getCookieVal (offset)

{

? var endstr = document.cookie.indexOf (";", offset);

? if (endstr == -1)

??? endstr = document.cookie.length;

? return unescape(document.cookie.substring(offset, endstr));

}

function GetCookie (name)

{

? var arg = name + "=";

? var alen = arg.length;

? var clen = document.cookie.length;

? var i = 0;

? while (i < clen) {

??? var j = i + alen;

??? if (document.cookie.substring(i, j) == arg)

????? return getCookieVal (j);

??? i = document.cookie.indexOf(" ", i) + 1;

??? if (i == 0) break;

? }

? return null;

}

function SetCookie (name, value)

{

? var argv = SetCookie.arguments;

? var argc = SetCookie.arguments.length;

? var expires = (argc > 2) ? argv[2] : null;

? var path = (argc > 3) ? argv[3] : null;

? var domain = (argc > 4) ? argv[4] : null;

? var secure = (argc > 5) ? argv[5] : false;

? document.cookie = name + "=" + escape (value) +

??? ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +

??? ((path == null) ? "" : ("; path=" + path)) +

??? ((domain == null) ? "" : ("; domain=" + domain)) +

??? ((secure == true) ? "; secure" : "");

}

function setLastlastVisitCookie ()

{

? var rightNow = new Date();

? var expdate = new Date();

? expdate.setTime (expdate.getTime() + 1 * (24 * 60 * 60 * 1000)); //+1 day

? SetCookie ("lastVisit", rightNow.getTime(), expdate, "/");

}

function ResetCookie()

{

? SetCookie("lastVisit", 0, null, "/");

}

// -->

</script>

十一、???????? Asp.net 中 頁面無刷新的做法
asp中為了實現無刷新,常常會將數據提交到隱藏框架中,在asp.net中

有一個很簡單的設置就可以實現

?????? void Page_Load(Object sender, EventArgs e)

?????? {

????????? this.SmartNavigation = true;

?????? }

或者直接寫在

<%@ Page language="c#" Codebehind="AllBook.aspx.cs"? SmartNavigation = true? AutoEventWireup="false" Inherits="wx.AllBook" %>


十二、???????? 關于Asp的性能優化
前一段時間,因為工作需要,對一舊系統進行了性能優化。

環境描述如下:

1.該系統為以信息為主要內容。采用asp實現表現層,數據庫采用MS SqlServer 2000 .

2.asp代碼混亂,并伴有許多錯誤,由于錯誤被屏蔽了,所以,系統才勉強可以使用。

3.所有的數據訪問直接通過在asp程序中編寫混合代碼實現,并在同一文件中重復訪問同一張表。

針對以上情況,經過分析,確定一下原則,

1。將數據庫的處理和訪問邏輯全部寫到存儲過程中。

2。asp只做顯示輸出的部分。

3。將原有的bug修正。

4。建立索引,并更改數據訪問的sql,注意要點有

1)Where 的條件需要將索引字段的條件置前。

2)不允許出現count(*) ,以count(field1)取代。

3)不允許出現 select * 以select field1,field2 ...等代替

4)盡量不用IN ,采用exits替代

5) 對于單條的Insert Update和delete ,不采用事務,采用事務鎖定表,影響并發的效率,某些特殊情況還需要進行

強制不鎖表

with(nolock)

十三、???????? 關于傳值(隱藏代碼方式)
1、在第一個頁的HTML中,確認Inherits屬性添加到@Page指令:

<%@ Page language="c#" Inherits="test_js.page1" %>

2、在第一個頁中建立一個Public的屬性

????????????? public string getName

????????????? {

???????????????????? get

???????????????????? {

??????????????????????????? return txtNumber.Text ;

???????????????????? }

????????????? }

3、添加傳送指令如下:

?????? Server.Transfer ("edit.aspx");

4、第二個頁面HTML設置如下:

?????? <%@ Reference Page="page1.aspx" %>

5、聲明第一個的變量

?????? public page1 fp1;

6、引用方法

?????? if (!this.IsPostBack )

?????? {

????????????? fp1=(page1)Context.Handler ;

????????????? txtRc.Text =fp1.getName;

?????? }

?????? //this.IsPostBack方法用于測試頁面是否是回傳

7、完成!

十四、???????? Application的事件
<script language="C#" runat="server">

??? void Application_OnBeginRequest(Object sender, EventArgs E)

??? {??????

??? }
??? void Application_OnEndRequest(Object sender, EventArgs E)

??? {
??? }


</script>


十五、???????? Session的事件
void Session_OnStart()

{????

?????? Session["username"]="";//初始化參數

}?


void Session_OnEnd()

{


}


十六、???????? 在本窗口打開頁面
?????? onclick ="window.open('?addnew=true','_self','')"

十七、???????? 關于DropDownList的數據綁定
???????????????????? drp_Tech.DataSource =ds.Tables["職員表"].DefaultView ;

???????????????????? drp_Tech.DataTextField ="技術員";

???????????????????? drp_Tech.DataBind ();?


十八、???????? Table的使用
?????? 1、可以用width=100%來使Table填充窗體的寬度

?????? 2、可以用<td colspan="3" align="center">&nbsp;</td>來合并列,合并行用rowspan,Span的意思是跨度?


十九、???????? DropDownList設置Item被選的方法
?????? DropDownList2.Items.FindByText ("2").Selected =true;??


二十、???????? 在HTML中去掉多的邊框(整體)
?????? leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"?


二十一、??????????? 用Java下載
????????????? <script language="javascript">

????????????? var strDownloadUrl = "http://g.china.msn.com/7MEZH_CN/ZH-CHS/SETUPDL.EXE";

????????????? function LaunchDownload(){location.href=strDownloadUrl;}

????????????? </script>?


二十二、??????????? 滾動字的做法:
?????? <marquee scrolldelay="180">歡迎登錄海天客戶關系管理系統!</marquee>?


二十三、??????????? 層
?????? 在Login.aspx中可以使用層來解決位置的問題

?????? <div id="Layer1"style="BORDER-RIGHT: #000000 0px; BORDER-TOP: #000000 0px; LEFT: 28%; OVERFLOW: hidden; BORDER-LEFT: #000000 0px; WIDTH: 432px; BORDER-BOTTOM: #000000 0px; POSITION: absolute; TOP: 24%; HEIGHT: 282px; visibility: visible;"></div>


二十四、??????????? 關于XML
???????????????????? DataSet dsXml =new DataSet ("Settings");

???????????????????? string filepath=Server.MapPath ("\\xml\\set.xml");

???????????????????? dsXml.ReadXml(filepath);

???????????????????? DataGrid1.DataSource =dsXml;

???????????????????? Response.Write ("<br><br><br>第一個連接為:" + dsXml.Tables ["Set"].Rows[0]["ConnectionString1"].ToString ());

???????????????????? DataGrid1.DataMember ="Set";

???????????????????? DataGrid1.DataBind ();?


二十五、??????????? 處理傳入的參數
?????? http://mov.hzgwbn.com/movie.asp?addnew=true

?????? 在void Form_Load()中加入:

?????? string _addnew=Request.QueryString ["addnew"];?


二十六、??????????? 關于__dopostback()
看看這個吧,可能有用!!

<SCRIPT language="JavaScript">

???? <!-- Hide from older browsers

???? function GetInput()

???????? {

??????????? input = prompt('input value that your want to send server:','');

??????????? if ((input) && (input!=""))

??????????? {

?????????????? document.forms['Form1'].elements['Hidden1'].value = input;

?????????????? __doPostBack('Button1', '');

??????????? }

???????? }??


???? // Stop hiding -->

</SCRIPT>??


其中使用了__DoPostBack這個系統的客戶端函數,用來激發服務器事件。


2、為了完成這個完整的頁面我們需要一個如下的Form

<form id="Form1" method="post" runat="server">

???????? <INPUT id="Hidden1" type="hidden" name="Hidden1" runat="server">

???????? <asp:Button id="Button1" runat="server" Text="Button"></asp:Button>

???????? <asp:TextBox id="TextBox1" runat="server"></asp:TextBox>

????? </form>

請注意里面的細節,這些都是運行在服務器上的(runat=server)??


3、接著就是服務器端的代碼(cs文件里面的),Page_load函數使得服務器控件Button1可以在呈現到客戶端的時候具有onclick事件代碼如下:

private void Page_Load(object sender, System.EventArgs e)

????? {

???????? // 在此處放置用戶代碼以初始化頁面

???????? this.Button1.Attributes.Add("onclick","GetInput();");

????? }??


4、最后就是按鈕的事件了,代碼如下,它將取到用戶輸入的一個值并且將這個值顯示在TextBox里面,代碼如下:

private void Button1_Click(object sender, System.EventArgs e) {

???????? string str = this.Hidden1.Value;

???????? this.TextBox1.Text = str;

????? }

5、我自己的示例

οnclick="javascript:if(!confirm('ok')){return};__doPostBack('Button3','');"

6、注意:頁面上一定要有LinkButton或是別的可以有__doPostBack的控件?


二十七、??????????? Toolbar
1、用Javascript處理

<script language="javascript">??

function WitchB()??

{if (event.srcNode!= null)??

?? {??

???? var bt=event.srcNode.getAttribute("id");??

???? switch (bt)??

?? {??

?? case "C1":??

?????? aa();??

?????? break;??

????????? case "C2":??

???????? 這里調用.aspx.cs中的過程,這句話該怎么寫,用__dopostback()??????

?????? break;??

?? }??

?? }??

}??

function aa()??

{...}??

</script>??

<body οnlοad="Toolbar1.onbuttοnclick=WitchB;" MS_POSITIONING="GridLayout">???


2、在C#中處理

?????? private void Toolbar1_ButtonClick(object sender, EventArgs e)

????????????? {

???????????????????? Response.Write (sender.ToString ());

???????????????????? TextBox1.Text =sender.ToString ();

???????????????????? if(sender.ToString ()=="ToolbarButton - button1")

???????????????????? {

??????????????????????????? Response.Redirect ("http://localhost/htcrm");

???????????????????? }

????????????? }??


?

轉載于:https://www.cnblogs.com/BoKeRen/archive/2006/03/01/340295.html

總結

以上是生活随笔為你收集整理的ASP.NET学习笔记 2的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。