zoukankan      html  css  js  c++  java
  • 为继承masterpage的页面设置defaultbutton和defaultfocus

    一个普通的aspx页面,我们可以很容易地为其设置设置defaultbutton和defaultfocus,具体如下:

    .aspx:

     <form id="form1" runat="server">
            <div>
                <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                <asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
                <asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
                </asp:Button>
            </div>
        </form>

    .cs:

     protected void Page_Load(object sender, EventArgs e)
        {
            this.Form.DefaultButton = SubmitButton.ID ;
            this.Form.DefaultFocus = TextBox1.ID;
        }

    但是如果我们的页面是继承于一个masterpage的,形如:

    .aspx:

    <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
        <asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
        </asp:Button>
    </asp:Content>

    .cs: 

    protected void Page_Load(object sender, EventArgs e)
        {
            this.Form.DefaultButton = SubmitButton.ID;
            this.Form.DefaultFocus = TextBox1.ClientID;
        }
    在执行时就会提示出现“The DefaultButton of 'form1' must be the ID of a control of type IButtonControl. ”的异常;解决的办法是:在这个页面,用一个panel控件把textbox, button包起来,比如:

    .aspx:

    <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
        <asp:panel id="panel" runat="server">
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" Text="Button1" runat="server" OnClick="Button1_Click"></asp:Button>
            <asp:Button ID="SubmitButton" Text="Submit" runat="server" OnClick="SubmitButton_Click">
            </asp:Button>
        </asp:panel>
    </asp:Content>

    .cs:

    protected void Page_Load(object sender, EventArgs e)
        {
            panel.DefaultButton  = SubmitButton.ID;
            this.Form.DefaultFocus = TextBox1.ClientID;
        }

  • 相关阅读:
    支付宝沙箱环境应用
    七牛云视频托管
    腾讯云短息验证码接口
    git远程连接(码云)
    git
    字间距
    html文本保留空格
    mysql重启导致AUTO_INCREMENT从1开始
    js保留两位小数
    vue中watch的基本用法
  • 原文地址:https://www.cnblogs.com/aspsmile/p/1317553.html
Copyright © 2011-2022 走看看