2017-03-09 74 views
0

我的佈局頁面中有Form標籤。我不能在內容頁面中使用表單標籤,所以我使用Form method =「post」如何爲此創建按鈕單擊事件以及如何爲html輸入類型進行驗證?如何爲窗體方法創建按鈕點擊事件?

<form class="contact-form-title white" method="post"> 
    <label id="lblFirstName" runat="server" title="First Name:">First Name:</label> 
    <input type="text" id="txtFirstNam" runat="server" /><br /> 

    <label id="lblLastName" runat="server" title="Last Name:">Last Name:</label> 
    <input type="text" id="txtLastNam" runat="server" /><br /> 

    <label id="lblEmail" runat="server" title="Email ID:">Email ID:</label> 
    <input type="text" id="txtEmail" runat="server" /> 

    <label id="lblMessage" runat="server" title="Message">Message:</label> 
    <textarea id="txtMessag" runat="server" ></textarea><br />       
    <input type="submit" class="btn delicious f-center" runat="server" id="btnContac" name="SUBMIT" onserverclick="btnContac_Click" style="height:25%; width:10%;"/> 
</form> 

後端:

protected void Page_Load(object sender, EventArgs e) 
{ 

} 

protected void btnContac_Click(object sender, EventArgs e) 
{ 
    string FirstName = txtFirstNam.Value; 
    string LastName = txtLastNam.Value; 
    string EmailID = txtEmail.Value; 
    string Message = txtLastNam.Value; 
} 
+0

我想我不明白...我可以看到你在點擊一個回傳,可以從輸入字段讀取值。問題是什麼? –

+0

這是asp.net還是mvc? – Anil

+0

@AnilKumar asp.net –

回答

0

方法1:客戶端控制 在後面的代碼使用的IsPostBack趕上回發事件,

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
     { 
      // write form population code; 
     } 
     else 
     { 
      //you will get posted data here; 
     } 
} 

,以驗證客戶端一邊,寫下你自己的Java腳本驗證器。

<script type="text/javascript"> 
    function validate() 
    { 
var Firstname = document.getElementById('txtFirstNam').value 
if (Firstname == "") 
{ 
    alert("Enter First Name"); 
    return false; 
} 

if (LastName == "") { 
    alert("Enter Last Name"); 
    return false; 
} 
} 
</script> 

然後調用提交此驗證按鈕,單擊

<input type="submit" class="btn delicious f-center" runat="server" id="btnContac" name="SUBMIT" onclick="return validate();" style="height:25%; width:10%;"/> 

選項2:服務器端控制

更改所有輸入和按鈕到服務器控件(添加runat=server)控制到服務器,那麼你可以在代碼背後捕獲服務器端的事件,就像你正在做的那樣。 good place開始

在服務器端方法中,您有機會使用內置的驗證器。

ASP.NET provides the following validation controls: 
RequiredFieldValidator. 
RangeValidator. 
CompareValidator. 
RegularExpressionValidator. 
CustomValidator. 
ValidationSummary. 

的驗證參考here