2013-02-27 9 views
3

Как я могу вызвать разные обратные вызовы в cshtml?различные вызовы, когда IsPost активирован в cshtml

@{ 
    Page.Title = ""; 
    Layout = "~/_Layout.cshtml"; 

    if(IsPost) 
    { 
     // if btn1 is pressed do this 

     // if btn2 is pressed do this 
    } 
} 

<div> 
    <form action="" method="post"> 
     <input type="submit" value="btn1" /> 
    </form> 

    <form action="" method="post"> 
     <input type="submit" value="btn2" /> 
    </form> 
</div> 

Есть ли способ узнать, какой из них нажат?

ответ

6

Вам необходимо указать атрибут «имя» для кнопок, чтобы они регистрировались как часть предоставленной формы, а также с помощью значения, которое вы можете определить переданной кнопке.

@{ 
    if (IsPost) { 
     switch (Request.Form[ "btn" ]) { 
      case "btn1": 
       <h2>It was btn1</h2> 
       break; 
     case "btn2": 
       <h2>It was btn2</h2> 
       break; 
     } 
    } 
} 
<div> 
    <form method="post"> 
     <input type="submit" name="btn" value="btn1" /> 

     <input type="submit" name="btn" value="btn2" /> 
    </form> 
</div>