2016-10-28 11 views
0

私はforeach文の下にグリッドを持っています。このforeach文には、HTML入力のチェックボックス列があります。グリッドビューのチェックボックスをコントローラに選択

私の問題は、私の行とグリッドを適切に設定できることです。すべての入力フィールドは大丈夫ですが、チェックボックスの属性は大丈夫でしたが、「チェック済み」チェックボックスをすべてモデルとしてコントローラに渡すことができません。ここで

は私のHTML /ビューコードです:

<input type="checkbox" class="chkEmployee" name="lngEmployeeID" value="="@Model.lngEmployeeID"></input> 

そして、これが私のjQueryのコードです:私のコントローラで

function fncBulkApprove() { 

     $('#btnEdit').unbind(); 
     $('#btnEdit').on('click', function(e) { 
      e.preventDefault(); 
      var objData = $('form').serialize(); 
      $.ajax({ 
       url: '@Url.Action("fncBulkEdit", Model)', 
       type: 'POST', 
       datatype: 'application/JSON', 
       data: objData, 
       beforeSend: function() { 
       }, 
       complete: function (request, status) { 
       }, 
       success: function (result) { 
        $('#divEdit').dialog('open'); 
       }, 
       error: function (request, status, error) { 
       } 
      });     
      });     
    } 

、私は、パラメータとしての私のモデルを渡しています:

[HttpPost] 
    public PartialViewResult fncBulkEdit(entEmployee objModel) 
    { 
     return PartialView("_Edit"); 
    } 

モデルのIDのリストは、

で宣言されています。
public virtual IList<long> lngEmployeeID { get; set; } 

すべてのチェックボックスをIList IDとしてコントローラに渡す方法を教えてください。

答えて

1

foreachループでは、チェックボックスを使用しないでください。 使用この中

@for(int i = 0; i < Model.ModelGroup.Count; i++) 
{ 
    <tr> 
    <td> 
     @Html.CheckBoxFor(m => m.ModelGroup[i].lngEmployee) 
    </td> 
    </tr> 
} 

Check this for details 以下のようなループの希望のために、これは...

+0

あなたのコードはかなり正常に動作することができます。私はまた、BeginFormメソッドの下にグリッドを置くことによって、チェックされたすべての値を渡すことができました。 –

関連する問題