-1

私の MVC 4 プロジェクトには情報のテーブルがあり、現在、ユーザーが PolicyId (テーブルのフィールドの 1 つ) を入力するために 2 つの入力ボックスを使用しており、次に PolicyIds を使用してポリシーを選択し、それらをビューに送信しています。それらを比較します。

クリック可能なテーブルの行について読んだことがありますが、リンクを開く単一の選択可能なテーブルの行を作成する人がほとんどでした。

2 つの行を選択し、ボタンをクリックして行をより詳細に比較できるようにテーブルを作成したいと思います。

そのため、選択した行ごとに PolicyId を取得して、詳細な比較用に設定された MVC ビューに渡すことができるようにしたいと考えています。

チェックボックスの使用について話している人もいましたが、私が見た実装のほとんどは非常に問題がありました。

私の調査によると、ほとんどの人は jQuery/javascript ルートを使用しているようです。私は Web プログラミングが初めてで、HTML と CSS の経験しかありません。したがって、可能な限り最も基本的な方法でこれを行う方法に関する適切な参照を誰かが知っている場合(複雑すぎなければjQuery/javascriptでも構いません)、または行全体をテキストボックスとして使用して結果またはその他の創造的なソリューションを保存する方法を引き受ける場合よろしくお願いします!ありがとう!

これが私のhtmlファイルからの私のコードスニペットの一部です:

@using (Html.BeginForm("FindPolicyRequests", "RequestResponse", FormMethod.Post, new { id = "ServiceRequestResponseETO" }))
{    
     <div style="float: left;">
       Insurance Policy Identifier: @Html.TextBox("polId")<input class="findbutton" id="findExecute" type="submit" value="Find" />
     </div> 
}
@using (Html.BeginForm("SrrCompare", "RequestResponse", FormMethod.Post, new { id = "ServiceRequestResponseETO" }))
{    


    <div style="float: right; width: auto;">
          <b style="text-align: left; float: left;">Compare Responses:</b>
          <b style="text-align: left; float: left;">SRR Identifier 1:</b> @Html.TextBox("polId1")<br />
           SRR Identifier 2: @Html.TextBox("polid2")
           <input class="findbutton" type="submit" value="Compare" />
    </div> 
}

.
.
.

<table class="srrTable">
                    <tr style="font-weight: bold">
                        <th>PolicyId
                        </th>
                        <th>DataText
                        </th>
                    </tr>
                    @foreach (var item in Model)
                    {
                        <tr>
                            <td>
                                @Html.DisplayFor(modelItem => item.PolicyId)
                            </td>

                            <td>
                                @Html.DisplayFor(modelItem => item.DataText)
                            </td>
                        </tr>
                    }
                </table>
4

1 に答える 1

0

対象の行の policyId を配列に追加します。Firebug でそれを見てください。お役に立てば幸いです。

(function($) {

  var $table = $(document.getElementById('data')),
      policyIds = [];

  $table.on('click', 'tr', function() {

    var $this = $(this);
    policyIds.push(parseInt($this.find('td:nth-child(1)').text(), 10));

    console.log(policyIds);

  });

})(jQuery);

http://jsbin.com/iquvab/1/

トグル機能で更新。http://jsbin.com/akudex/1/editを参照

于 2013-07-26T14:15:36.990 に答える