datatables Editor Feldtyp 'Auswahl' + Aktion für Bearbeiten und Entfernen von Schaltflächen Probleme

Hi Ich habe eine Webanwendung, die mit Java + Struts2 + Hibernate erstellt wurde. Ich verwende den dataTable-Editor, um den Inhalt einer der Backend-Tabellen anzuzeigen. Ich bin neu bei DataTables und finde es schwierig, einige Dinge zu tun.

1) das Dropdown-Menü inNew/Editas @ -Fenster enthält eine Dropdown-Liste und die Optionen der Dropdown-Liste stammen aus der Datenbank. Ich bin nicht sicher, wie ich ein JSON-Objekt, das die Liste enthält, zurückgeben und iterieren soll, um das Dropdown-Feld im genannten Fenster zu fülle

2) Wie wird der ausgeblendete Spaltenwert der ausgewählten Zeile abgerufen, nachdem auf die Schaltfläche zum Entfernen der Datentabelle geklickt wurde?

Below ist mein Code:

 <table id="example" class="display" cellspacing="0" width="100%">
     <thead>
        <tr>
            <th>Description</th>
            <th>Category</th>
            <th>Payee</th>
            <th>Date</th>
            <th>Amount</th>
            <th>Income ID</th>
        </tr>
    </thead>
   </table>

JQuery:

  <script src="jquery/dt_editor/jQuery-2.1.4/jquery-2.1.4.min.js"></script>
   <script src="jquery/dt_editor/DataTables-1.10.10/js/jquery.dataTables.min.js" ></script>
   <script src="jquery/dt_editor/Buttons-1.1.0/js/dataTables.buttons.min.js"></script>
  <script src="jquery/dt_editor/Select-1.1.0/js/dataTables.select.min.js" >    </script>
   <script src="jquery/dt_editor/Editor-1.5.4/js/dataTables.editor.min.js" ></script>
   <script>
     var editor; 

    $(document).ready(function() {
    editor = new $.fn.dataTable.Editor( {
    "ajax": "refreshIncomeData",
    "table": "#example",
    "fields": [ {
            "label": "Description:",
            "name": "inocme.description"
        }, {
            "label": "Amount:",
            "name": "inocme.amount"
        },
        {
            "label": "Category:",
            "name": "userCodeID",
            "type": "select",
            "options": [{userCodeName: "Edinburgh", userCodeID: 51}],
            optionsPair: {
                label: 'userCodeName',
                value: 'userCodeID'
            }
        },
        {
            "label": "Transaction Date:",
            "name": "inocme.transactionDate",
            "type": "datetime",
            "def": new Date()
        }
    ]
    } );

    $('#example').DataTable( {
    dom: "Bfrtip",
    "ajax": "refreshIncomeData",
    serverSide: true,
    "aoColumns": [
                  {"mData":"description","bSearchable": true,"bSortable": true},
                  {"mData":"catergory.userCodeName","bSearchable": false,"bSortable": false},
                  {"mData":"payee.payeeName","bSearchable": false,"bSortable": false},
                  {"mData":"transactionDate","bSearchable": false,"bSortable": false},
                  {"mData":"amount","sWidth":"30px","bSearchable": false,"bSortable": true},
                  {"mData":"incomeID","visible":false}],
    select: true,
    buttons: [
        { extend: "create", editor: editor },
        { extend: "edit",   editor: editor },
        { "text": "Remove Record", action: function(){

            $.each($("#example tr.selected"),function(){ //get each tr which has selected class
                alert($(this).find('td').eq(4).text()) //Gives me 4th column value of the table(amount)

            });
        } }
    ]
    } );
  } );

 &l,t;/script>

Ich kann den 4. Spaltenwert (der Betrag) aus der Tabelle abrufen, wenn Sie auf die Schaltfläche "Entfernen" klicken. Es ist mir jedoch nicht möglich, den fünften Spaltenwert abzurufen, bei dem es sich um den Wert incomeID (Primärschlüssel) handelt, der ausgeblendet ist (bVisible: false). Wie bekomme ich diesen versteckten Spaltenwert? Dies kann mein Problem lösen.

Aktualisieren

 var myTable=$("#example").DataTable();
 var col=myTable.row().cell(5).data();
alert(col);

dies gibt mir einen Objekttyp. Ich bin mir nicht sicher, wie ich den Text von einem Objekt erhalten oder dieses Objekt in normalen Text konvertieren kann.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage