一、跨頁面傳值和取值:
1、QueryString - url傳值,地址傳值
優缺點:不占用服務器內存;保密性差,傳遞長度有限。
通過跳轉頁面路徑進行傳值方式:
href="地址?key=value&key=value" 用&可以實現傳遞多個值。
通過這種方式就把要傳遞的值傳到要跳轉的頁面去了。
2、跨頁面取值:
在跳轉到的頁面的C#代碼服務端進行取值
用: string value = Request["key"];
二、C#端頁面跳轉
當前頁面跳轉:
Response.Redirect("url");也可在這個跳轉地址中進行傳值。
打開新頁面窗口:
Response.Write("<script>window.open('Default2.aspx','_blank');</script>");
Response.Write() 會將括號中的內容原封不動的輸出到Html頁面的最頂端。里面可以放Js,上例就是通過Js來實現打開新頁面。
三、Button的OnClientClick屬性
OnClientClick 屬性用於設置當 Button 控件被點擊時運行一段客戶端腳本。
<asp:Button ID="Button1" OnClientClick="return buttonisok()"runat="server" Text="注冊" />
按鈕控件的OnClientClick屬性來控制按鈕的提交,屬性值為True才可提交,屬性值為False則不可提交。
而 buttonisok()是在Js中寫的一個方法,只會返還True或者 False。就可實現控制按鈕的提交功能。
Js知識點回顧:
按鈕的點擊事件:在新頁面打開一個沒有菜單沒有導航欄,寬450高500的新頁面,地址是Update.aspx並且傳一個值。這個值通過這個按鈕的一個自定義屬性'bh'中取得
document.getElementById("btn1").onclick=function(){
window.open("Update.aspx?i=" + this.getAttribute('bh'), "_blank", "toolbar=no menubar=no width=450 height=500")
}
按鈕的代碼:<input id="btn1" type="button" bh="<%#Eval("Ids") %>" value="編輯" />
超鏈接:
點擊會彈出提示框是否刪除?點確定會連接到href中寫好的地址。
<a onclick="return confirm('是否刪除<%#Eval("NickName") %>?')"href="Delete.aspx?i=<%#Eval("Ids") %>">刪除</a>
textbox自動先知用戶不能輸入空格:
<asp:TextBox ID="TextBox1" runat="server" Style="outline: none; height: 20px; width: 170px; border: 1px solid gray;" BorderColor="WhiteSmoke" onkeyup='value = value.replace(/(^\s*)|(\s*$)/g,"");'></asp:TextBox>
onkeyup='value = value.replace(/(^\s*)|(\s*$)/g,"");' 一輸入空格,自動退回.
