初學.Net,問題可能很白癡,希望大家來幫忙!問題是response.aspx中的button控件如何可以點擊后觸發(fā).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>在頁面中輸出數(shù)據(jù)</h1>");??????????? char c = 'a';//定義一個字符變量??????????? string s = "Hello World!";//定義一個字符串變量??????????? char[] cArray={'H','e','l','l','o',',','W','o','r','l','d'};//定義一個字符數(shù)組??????????? Page p = new Page();//定義一個Page對象??????????? Response.Write("輸出單個字符");??????????? Response.Write(c);??????????? Response.Write("<br />");??????????? Response.Write("輸出一個字符串"+s+"<br />");??????????? Response.Write("輸出字符數(shù)組");??????????? 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>頁面跳轉并傳遞參數(shù)</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");??????? ??????? }??? }}
2 回答

烙印99
TA貢獻1829條經驗 獲得超13個贊
1. <asp:Button ID="btnOK" runat="server" Text="確定" OnClick="btnOK_Click"/> 顏色部分是觸發(fā)事件的聲明;
2. form里的post和action都不需要聲明,頁面自動”回發(fā)(postback)“,即傳回自身頁面處理;只有這樣,后臺事件才能觸發(fā);
3. 如果聲明了action,頁面就會跳轉到相應的其他頁面
<form id="Form1" method="post" runat="server" action="chapter2/welcom.aspx">
注意:不要使用”~“,form只是一個標記了runat="server"的html控件,還不是像<asp:button?? >這樣的服務器控件,不能這樣解析。
?
最后,要給分呀!沒分就沒人來了,呵呵。

慕標5832272
TA貢獻1966條經驗 獲得超4個贊
?? <asp:Button ID="btnOK" runat="server" Text="確定" OnClick="btnOK_Click"?/>
?問題:你沒有在你頁面控件上綁定該控件要觸發(fā)的事件,在.cs文件中寫了,不綁定一樣觸發(fā)不了啊。只是觸發(fā)一次回傳而已。
還有就是你的page_load中寫的是什么意思?知識要測試在頁面輸出文字?
- 2 回答
- 0 關注
- 490 瀏覽
添加回答
舉報
0/150
提交
取消