.Net Button控件调用方法问题

初学.Net,问题可能很白痴,希望大家来帮忙!问题是response.aspx中的button控件如何可以点击后触发.cs文件里的btnOK_Click事件。点击按钮没有起作用。还有一个问题就是form的action为什么改不掉呢,修改控件里的action属性也改不掉。没搞明白,代码如下:

这是response.aspx中的控件代码:

  <div>
       <form id="Form1" method="post" runat="server" action="~/chapter2/welcom.aspx">
        姓名:<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
        <br />
        性别:<asp:RadioButton ID="rbtSex1" runat="server" Checked="True" Text="男" GroupName="sex" />
              <asp:RadioButton ID="rbtSex2" runat="server" Text="女" GroupName="sex" />
        <br />
        <asp:Button ID="btnOK" runat="server" Text="确定"/>
        </form>
    </div>

这是cs文件里的代码

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace WebApplication1.chapter2
{
    public partial class response : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write("<h1>在页面中输出数据</h1>");
            char c = 'a';//定义一个字符变量
            string s = "Hello World!";//定义一个字符串变量
            char[] cArray={'H','e','l','l','o',',','W','o','r','l','d'};//定义一个字符数组
            Page p = new Page();//定义一个Page对象
            Response.Write("输出单个字符");
            Response.Write(c);
            Response.Write("<br />");
            Response.Write("输出一个字符串"+s+"<br />");
            Response.Write("输出字符数组");
            Response.Write(cArray, 0, cArray.Length);
            Response.Write("<br />");
            Response.Write("输出一个对象");
            Response.Write(p);
            Response.Write("<br />");
            Response.Write("输出一个文件");
            Response.Write(@"D:\dotnet\WebApplication1\WebApplication1\chapter2\WriteFile.txt");//读取不出来
            Response.Write("<h1>页面跳转并传递参数</h1>");
        }

        protected void btnOK_Click(object sender, EventArgs e)
        {

            string name = this.txtName.Text;
            string sex = "先生";
            if (this.rbtSex2.Checked)
                sex = "女士";
            Response.Redirect("welcom.aspx");
       
        }
    }
}

蝴蝶不菲
浏览 503回答 2
2回答

烙印99

1. <asp:Button ID="btnOK" runat="server" Text="确定" OnClick="btnOK_Click"/> 颜色部分是触发事件的声明; 2. form里的post和action都不需要声明,页面自动”回发(postback)“,即传回自身页面处理;只有这样,后台事件才能触发; 3. 如果声明了action,页面就会跳转到相应的其他页面 <form id="Form1" method="post" runat="server" action="chapter2/welcom.aspx"> 注意:不要使用”~“,form只是一个标记了runat="server"的html控件,还不是像<asp:button   >这样的服务器控件,不能这样解析。   最后,要给分呀!没分就没人来了,呵呵。

慕标5832272

   <asp:Button ID="btnOK" runat="server" Text="确定" OnClick="btnOK_Click" />  问题:你没有在你页面控件上绑定该控件要触发的事件,在.cs文件中写了,不绑定一样触发不了啊。只是触发一次回传而已。 还有就是你的page_load中写的是什么意思?知识要测试在页面输出文字?
打开App,查看更多内容
随时随地看视频慕课网APP