2016-04-07 66 views
0

我有一個asp.net mvc剃鬚刀文件。該按鈕需要將數據發送到數據庫。這是我的代碼。數據庫已連接並在服務器上運行。我只是無法獲得將數據發送到數據庫的按鈕。與JavaScript的onclick事件我已經嘗試,但似乎沒有工作。有人可以解釋我應該做什麼嗎?這是我第一次使用.cshtml,但我不知道如何解決這個問題。onclick button保存數據.cshtml

問題已解決。 我用錯了名字。我所指的.cshtml的輸入,而不是名稱的ID的C#部分..

@{ 
Validation.RequireField("achternaam", "Achternaam is verplicht."); 
Validation.RequireField("voornaam", "Voornaam is verplicht."); 
Validation.RequireField("organisatie", "Organisatie is verplicht."); 
Validation.RequireField("email", "Email is verplicht."); 
Validation.RequireField("datum", "Datum is verplicht."); 
Validation.RequireField("tijd", "Tijd is verplicht."); 

var achternaam = ""; 
var voornaam = ""; 
var organisatie = ""; 
var email = ""; 
var datum = ""; 
var tijd = ""; 

if (IsPost && Validation.IsValid()) 
{ 
    achternaam = Request.Form["achternaam"]; 
    voornaam = Request.Form["voornaam"]; 
    organisatie = Request.Form["organisatie"]; 
    email = Request.Form["email"]; 
    datum = Request.Form["datum"]; 
    tijd = Request.Form["tijd"]; 


    using (var db = new Blub._1.Database.blubEntities()) 
    { 
     // Insert 
     var bezoeker = new Blub._1.Database.visitor 
     { 
      AchterNaam = achternaam, 
      VoorNaam = voornaam, 
      Bedrijf = organisatie, 
      DatumBezoek = Convert.ToDateTime(datum), 
      Email = email 
     };     

    Response.Redirect("~Bezoeker"); 
} 

<div id="header"> 
    <h1>Als voorbeeld ...</h1> 
</div> 

<div id="nav"> 
    <br /> 
    <a href="/OverzichtWerknemer">Overzicht</a> 
    <br /> 
    <a href="/Bezoeker">Nieuwe bezoeker</a> 
    <br /> 
    <a href="/Contractor">Nieuwe contractor</a> 
</div> 

<div id="section"> 
    <form name="login" action="~/OverzichtWerknemer.cshtml" method="post" accept-charset="utf-8"> 
     <table> 
      <tr> 
       <td><b>Achternaam*:</b></td> 
       <td> 
        <input id="achternaam" name="LastName" type="text" maxlength="60" style="width:146px; border:1px solid #999999" required /> 
       </td> 
      </tr> 
      <tr> 
       <td><b>Voornaam*:</b></td> 
       <td> 
        <input id="voornaam" name="FirstName" type="text" maxlength="60" style="width:146px; border:1px solid #999999" required/> 
       </td> 
      </tr> 
      <tr> 
       <td><b>Organisatie*:</b></td> 
       <td><input id="organisatie" name="Organization" type="text" maxlength="60" style="width:300px; border:1px solid #999999" required /></td> 
      </tr> 
      <tr> 
       <td><b>Emailadres*:</b></td> 
       <td><input id="email" name="FromEmailAddress" type="text" maxlength="60" style="width:300px; border:1px solid #999999" required/></td> 
      </tr> 
      <tr> 
       <td><b>Dag van bezoek*:</b></td> 
       <td><input id="datum" name="FromDate" type="date" style="width:300px; border:1px solid #999999" required /></td> 
      </tr> 
      <tr> 
       <td><b>Tijdstip*</b></td> 
       <td><input id="tijd" name="TimeVisit" type="time" maxlength="60" style="width:300px; border:1px solid #999999" required /></td> 
      </tr> 
      <tr> 
       <td colspan="2"> 
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        * - Verplicht veld. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        <input type="submit" value="Registreer" /> 

       </td> 
      </tr> 
     </table> 
     <br /> 
    </form> 
</div> 

<div id="footer"> 
    Copyright 
</div> 
+0

哪裏方法叫什麼名字? –

+0

此.cshtml文件中不需要方法名稱 – EfhK

回答

1

最好的辦法是使用url幫手

<form method="post" action="@Url.Action("MyAction", "MyController")" > 
1

我認爲你必須有一個表單標籤,像這樣的動作:

<form method="post" action="/ControllerName/ActionName"> 

或者使用助手爲#Kypaz提示:

@using (Html.BeginForm("ActionName", "ControllerName", null (adapt to route), FormMethod.Post)) 
{ 

<input type="submit" value="Submit"/> 

}