1

私のhtml.beginformには、保持したいこのチェックボックスがあります。以下のActionLinkに追加する方法がわかりません...またはそれが可能かどうかもわかりません。セッション変数を使用することを考えました。誰かがセッション変数にチェックボックス値を設定する方法を示す例を持っているなら、それは素晴らしいでしょう...またはそれをActionLinkに渡す方法があるなら...それもクールでしょう。よろしくお願いします

      @Html.CheckBoxFor(model=>model.wccrSelection.SendDemand)

      @Html.ActionLink("Order",
        "Display", new {Model.wccrSelection.WccrId,sortOrder = ViewBag.NameSortParm })
4

2 に答える 2

2

<form>リンクの代わりに a を使用できます。このようにして、チェックボックスの値が自動的にコントローラーに送信され、JavaScript を使用する必要がなくなります。

@using (Html.BeginForm("Display", null, new { id = Model.wccrSelection.WccrId, sortOrder = ViewBag.NameSortParm }))
{
    @Html.CheckBoxFor(model=>model.wccrSelection.SendDemand)
    <button type="submit">Order</button>
}
于 2012-06-17T06:17:48.063 に答える
1

以下に示すように、jQuery を使用して、チェックボックスの状態をアクション メソッドに渡すための追加のパラメーターを追加できます。

例えば。:

    @Html.CheckBoxFor(model=>model.wccrSelection.SendDemand, new {@class = "SendDemand"})
    @Html.ActionLink("Order",
            "Display", new {Model.wccrSelection.WccrId,sortOrder = ViewBag.NameSortParm }, new { @class = "DisplayOrder" })

<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script>
<script type="text/javascript"> 
        $(function(){
          (".DisplayOrder").on.("click",function(){
          var href = $(this).attr("href");
          if ($(".SendDemand").is(':checked')) {
            href = href + "&CheckBoxState=true";
          } 
          else {
            href = href + "&CheckBoxState=false";
          }
          $(this).attr("href", href);
        });
       });
</script>
于 2012-06-17T05:46:07.180 に答える