亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET中控件與母板有什么區別

發布時間:2021-10-13 10:02:27 來源:億速云 閱讀:161 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“ASP.NET中控件與母板有什么區別”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“ASP.NET中控件與母板有什么區別”這篇文章吧。

1、ASP.NET的好壞處

CodeBehind:“前aspx后cs”的模式,
(1、aspx(控件定義、html、css)控制頁面長相,cs控制程序邏輯
aspx就是模板引擎,不需要再去尋找第三方的模板引擎
(2、aspx中調用cs的成員級別必須是protected或者public不能是private
因為當前this執行的是當前的子類(通過反編譯查看)

ASP.NET中控件與母板有什么區別

2、

ASP.NET中控件與母板有什么區別

Literal:
Mode屬性,避免XSS攻擊

TextBox:
AutopostBack=true 焦點離開Textbox提交表單
ASP.NET中經常不直接調用submit而是調用_doPostBack方法提交表單
TestChanged事件配合AutopostBack可以點擊submit自動提交表單更新輸入文本

Button:OnCLientClick
return confirm("真的要執行嗎?")

ASP.NET中控件與母板有什么區別

ASP.NET中控件與母板有什么區別

3、Button、LinkButton、ImageButton讓多個控件共享一個處理函數:
command屬性設置響應函數
CommandArgument=“daomul”(命令參數傳參數)
CommandName=“Remove”(名字)

4、

Panal:
弄成"高級設置"(fieldset)的渲染形式:GroupingText=“高級設置”

HyperLink:引用站內內部資源的時候很方便(自動轉換路徑)
NavigateUrl屬性

ASP.NET中控件與母板有什么區別

5、

FileUpload:
FileUploadl.HasFile:用戶是否選擇了文件
FileUploadl.SaveAs("根目錄全路徑"):
Server.Mapath或者VirtualPathUtility.ToAbsolute都可以
path=Server.Mapath(“~/upload/”);

漏洞:(只允許上傳指定類型的文件)

System.IO.File.Delete(Server.Mapath.("~/upload/"));
System.IO.File.ReadAllText(Server.Mapath.("~/upload/"));

6、實例:注冊界面

Register.aspx

復制代碼 代碼如下:


 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Register.aspx.cs" Inherits="登陸注冊.Register" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<body>
    <form id="form1" runat="server">
    <div>
        <table border="0" cellpadding="0" cellspacing="0">
            <tr>
                <td>
                    <asp:Label ID="LabelName" runat="server" Text="姓名"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtUserName" runat="server" AutoPostBack="True"
                        ontextchanged="txtUserName_TextChanged"></asp:TextBox>
                    <asp:Label ID="errorMsg" runat="server"
                            Text="Label" CssClass="error" Visible="False"></asp:Label>
                </td>
            </tr>

           <tr>
                <td>
                    <asp:Label ID="Label2" runat="server" Text="密碼"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtPassWord" runat="server"></asp:TextBox>
                    密碼強度:
                    <span id="spanPassWord" ></span>
                </td>
            </tr>

            <tr>
                <td>
                    <asp:Label ID="Label3" runat="server" Text="重復輸入密碼"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtPassWord_Second" runat="server"></asp:TextBox>
                </td>
            </tr>

            <tr>
                <td>
                    <asp:Label ID="Label4" runat="server" Text="郵箱"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                </td>
            </tr>

            <tr>
                <td>
                    <asp:Button ID="btnRegister" runat="server" Text="注冊"
                        onclick="btnRegister_Click" />
                </td>
            </tr>
            <tr>
                <td>
                    <asp:Label ID="LabelErrorMsg" runat="server" Visible="False"></asp:Label>
                </td>
            </tr>
        </table>
    </div>
    </form>
</body>
<head id="Head1" runat="server">
    <style type="text/css">
        .error{background:Red;}
    </style>
    <title>注冊用戶</title>
    <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $("#<%=txtPassWord.ClientID %>").blur(function () {
                var str = $(this).val();
                if (str.length <= 6) {
                    $("#spanPassWord").text("弱");
                }
                else {
                    //含有數字、字母
                    var check = /\w/;
                    if (check.test(str)) {
                        $("#spanPassWord").text("強");
                    }
                    else {
                        $("#spanPassWord").text("中");
                    }
                }

            });
            $("#<%=form1.ClientID %>").submit(function () {
                var pas1 = $("#<%=txtPassWord.ClientID %>").val();
                var pas2 = $("#<%=txtPassWord_Second.ClientID %>").val();
                if (pas1 != pas2) {
                    alert("兩次輸入密碼不一致,請重新輸入");
                    return;
                }
                var sEmail = $("#<%=txtEmail.ClientID %>").val();
                var check = /.+@.+/;
                if (!check.test(sEmail)) {
                    alert("郵箱格式不正確,請重新輸入");
                    return;
                }
            });
        });</script>
</head>
</html>
 
Register.apsx.cs

復制代碼 代碼如下:


using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Web.UI;
 using System.Web.UI.WebControls;
 using 登陸注冊.DAL.DataSet1TableAdapters;
 using System.Text.RegularExpressions;

 namespace 登陸注冊
 {
     public partial class Register : System.Web.UI.Page
     {
         protected void Page_Load(object sender, EventArgs e)
         {

         }

         protected void btnRegister_Click(object sender, EventArgs e)
         {
             //服務器版測試是否符合要求:郵箱餓壞密碼
             if (txtPassWord.Text != txtPassWord_Second.Text)
             {
                 LabelErrorMsg.Text = "密碼不一致!";
                 LabelErrorMsg.Visible = true;
                 return;
             }
             Regex reEmail = new Regex(@".+@.+");
             if (!reEmail.IsMatch(txtEmail.Text))
             {
                 LabelErrorMsg.Text = "Email格式不正確!";
                 LabelErrorMsg.Visible = true;
                 return;
             }
             LabelErrorMsg.Visible = false;
             T_userInfoTableAdapter adapter = new T_userInfoTableAdapter();
             if (adapter.GetDataByUserName(txtUserName.Text).Count >= 1)
             {
                 errorMsg.Visible = true;
                 errorMsg.Text = "用戶名重復,請重新輸入!";
                 return;
             }
             long userId=Convert.ToInt64(adapter.InsertUser(txtUserName.Text, txtPassWord.Text,
                 txtEmail.Text));
             //讀取Session登陸信息
             Session["登陸ID"] = userId;
             Session["登陸標記"] = true;
             //設置可以傳參數的公共跳轉頁面
             //作用1:告訴用戶注冊成功,作用2:防止用戶點擊刷新重復提交數據
             Response.Redirect("target.aspx?Msg=注冊成功即將轉向登陸界面&RedirectURL=login.aspx");
         }

         protected void txtUserName_TextChanged(object sender, EventArgs e)
         {
             T_userInfoTableAdapter adapter = new T_userInfoTableAdapter();
             if (adapter.GetDataByUserName(txtUserName.Text).Count >= 1) {
                 errorMsg.Visible = true;
                 errorMsg.Text = "用戶名重復,請重新輸入!";
             }
             else{
                 errorMsg.Visible = false;
             }
         }
     }
 }


其中要用到的正則表達式:

ASP.NET中控件與母板有什么區別

ASP.NET中控件與母板有什么區別

插入數據記錄:INSERT INTO [dbo].[T_userInfo] ([sUserName], [sPassWord], [Email])  output Inserted.Id VALUES (@sUserName, @sPassWord, @Email)

(1、增加SQL語句,

(2、增加一個output Insert.Id 在Insert語句當中
(3、設置ExecuteMode屬性為Scalar

7、三種控件的區別:html控件、服務端控件。runat=server 的控件(最好)

a1.Attributes("aaa")="建屬性賦值";

ASP.NET中控件與母板有什么區別

8、驗證控件

ASP.NET中控件與母板有什么區別

(1、 RequiredFieldVal:
設置哪個控件和顯示名稱(還有CausesValdation焦點移開) -----為空
初始值:InitleValue(請輸入關鍵字、包括下拉框的初始值)

ASP.NET中控件與母板有什么區別

Validator共性
!!!!!!!!!!
if(!IsValid){return;}
if(this.IsValid){//防止跳過客戶端校驗IsValid表示頁面中所有Validator是否都通過了
label1.Text="";
}
else{
label1.Text="客戶端填寫不足或有錯誤";
}

ASP.NET中控件與母板有什么區別

ASP.NET中控件與母板有什么區別

ValidstionGroup 分組(表單可以在頁面內單個組提交,而不關聯其他組)相同于按鈕的name

(2、RangeValidator:范圍驗證
最大最小比較
    Date.Now.()baidu下

ASP.NET中控件與母板有什么區別

(3、只有RequiredFieldValidator可以對字段為空進行驗證

(4、CompareValidator:比較驗證(類型校驗、與其他控件比較、)
       ControlToCompare設置為要比較的控件

ASP.NET中控件與母板有什么區別

RegularExpression:

VaildationExpression 正則表達式驗證

CustomVaildate自定義控件驗證

ServerValidate服務端校驗代碼
ClientVlidtionFunction

ASP.NET中控件與母板有什么區別

(5、ValidationSummary匯總錯誤信息
text 和ErrorMsg的區別,ErrorMsg就是用于ValidationSummary中,
而text則是直接顯示在驗證控件位置

ASP.NET中控件與母板有什么區別

ASP.NET中控件與母板有什么區別

 母版:

//操作模板頁的控件
Button btn=(Button)this.Master.FindControl("Button1");
btn.Visible=!btn.Vissble;

this.Master.Mapath();

虛擬路徑轉化為客戶端訪問的路徑(不是服務端控件):
src="<%=ResolveClientUrl%>"

this.ResolveClientUrl();
ResolveClientUrl:考慮當前頁面的路徑
ResolveUrl:生成一個從根開始的路徑

ASP.NET中控件與母板有什么區別

ASP.NET中控件與母板有什么區別

以上是“ASP.NET中控件與母板有什么區別”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永登县| 镇安县| 顺昌县| 余庆县| 邯郸市| 肥东县| 湖州市| 巴彦淖尔市| 西平县| 环江| 衡阳市| 河西区| 甘泉县| 东乡县| 武清区| 南安市| 漯河市| 离岛区| 赣榆县| 阳东县| 沾益县| 前郭尔| 平利县| 腾冲县| 比如县| 崇左市| 威远县| 泸溪县| 来安县| 南汇区| 曲阳县| 革吉县| 广德县| 秀山| 陆川县| 普兰店市| 车致| 扶沟县| 和平区| 郁南县| 铁岭市|