3

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>

どちらが押されているかを知る方法はありますか?

4

1 に答える 1

7

ボタンが送信されたフォームの一部として登録されるようにするには、ボタンに「name」属性を指定する必要があります。値を使用して、送信されたボタンを決定できます。

@{
    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>
于 2013-02-27T19:28:53.407 に答える