3

ビューから POST 値にアクセスする方法はありますか (コントローラーを通過せずに)

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset>
        @Html.TextBox("SomeValue")    
        <input type="submit" value="Submit" />
    </fieldset>
}

The value being posted is @SomeValue

@SomeValueの正しい構文は何ですか

4

3 に答える 3

1

フォーム コレクションには次の方法でアクセスできると思います。

HttpContext.Current.Request.Form

...しかし、なぜ?MVC の目的に反します。

于 2012-08-07T18:32:20.033 に答える
0

クライアント側で何かが必要な場合は、JavaScript を使用し、ビューにロジックを配置しないでください。ビューは愚かであるべきです。

ラインの交換:

@Html.TextBox("SomeValue")

@Html.TextBox("SomeValue", new {Id = "somevalue"})

ビューが次のように JQuery でレンダリングされると、値にアクセスできるようになります。

$("#somevalue").val()

HTH

于 2012-08-07T18:32:05.457 に答える
0

コントローラに送られる前に、TextBox の値を知りたい場合は、javascript を介して取得できます。

後でコンテンツを変更できるように、HTML を変更してスパンを設定します。

掲載されている値は

送信動作をオーバーライドして取得する

<script type="Text/javascript">
  $(function(){
        $("form").submit(function(e){
           e.preventDefault();
           $("#spanVal").html($("#YourTextBoxID").val());
        });
  });

</script>

これは実際にはコントローラーのアクション メソッドにフォームを送信しHTTPPOSTませんが、スパン内のテキスト ボックスに値を表示します。

于 2012-08-07T18:32:06.247 に答える