2017-08-02 260 views
0
$("#TransactionTable").DataTable({ 
        ajax: { 
         url: '/Transaction/SearchMockup', 
         type: 'POST', 
         data: { 
          cardEndingWith: $("#ccn").val(), 
          status: $("#status").val(), 
          supplier: $("#supplier").val(), 
          fromDate: $("#fromDate").val(), 
          toDate: $("#toDate").val() 
         } 
        }, 
        columns: [ 
        { 
        { data: 'Status' }, 
        { data: 'TransactionId' }, 
        { data: 'CreditCardNumber' }, 
        { data: 'Supplier' }, 
        { data: 'CreatedAt' }, 
        { data: 'Amount' }, 
        { data: 'Guid' } 
        ], 
        columnDefs: [ 
        { 
         "targets": [6], 
         "visible": false, 
         "className": "guid" 
        }, 
        { 
         "targets": [1], 
         "className": "transactionIdColumn", 
        } 
        ] 
       }); 

"TransactionId"列をクリックすると、隠れた "Guid"列の値/データが取得されます。私のguidカラムには、「transactionIdColumn」というクラス名があります。 jQueryコードの助けが必要です。jQuery DataTablesで非表示列データを取得

$("#TransactionTable .transactionIdColumn").on('click', function (elm) { 
       var guidNumber = $(elm).closest("tr").find(".transactionIdColumn").html(); 
       alert(guidNumber); 
      }); 

enter image description here

+1

へのリンクです。HTML() ; 'は' var guidNumber = $(this).html(); 'と等価に見えます。その '.find()'セレクタを変更すると、あなたに戦闘の機会が与えられます。 –

+1

datatable APIを使用してデータにアクセスします。https://stackoverflow.com/a/36695886/1175966を参照してください。 – charlietfl

答えて

1

あなたはこれを試すことができます。

はこのような何かを試してみてください。ここで

{ "data" : "TransactionId", 
    "render": function (data, type, full, meta) { 
       var guid = full['guid']; 
       return '<a href="#" class="trans_id" data-guid="'+guid+'"> '+data+' </a>'; 
      } 
}, 

。( "transactionIdColumn")を見つける書かれ、 `VAR guidNumber = $(ニレ).closest( "TR")としてdatatables.render

$("#TransactionTable .trans_id").on('click', function (elm) { 
    var guidNumber = $(this).data('guid'); 
    alert(guidNumber); 
}); 
関連する問題