Quantcast
Channel: Editor — DataTables forums
Viewing all articles
Browse latest Browse all 3740

dropdown updates only if marked ??

$
0
0

Hello,

I have an editor data table and I am using drop down fields for some columns. When editing inline, I can't properly update the selected value of the dropdown box. The value is only updated if you then click on the dropdown field again and mark it. Can someone please help me to solve this problem?
thanks

var dropdownPerson = @Html.Raw(Json.Serialize(@ViewBag.Person));
var editor;  
        $(document).ready(function(){
            editor = new $.fn.dataTable.Editor ({
                ajax: {url: "/Controller/EditorTableMethod" , type: "POST"},
                table: "#tableName",
                fields: [{
                    label: "employees",
                    name: "employees",
                    type: "select",
                    options: dropdownPerson.value           
                    }, ......

$('#tableName').on('click', 'tbody td:not(:first-child)', function (e) {
                editor.inline(this);


            });

            $('#tableName').on( 'click', 'tr', function () {
            $(this).toggleClass('selected');
            });

           var table = $('#tableName').DataTable({
            dom: "Bfrtip",
            //select: {
            //    style: 'multi'
            //},

            ajax: "/Controller/EditorTableMethod",
            columns: [
                {
                    data: null,
                    defaultContent: '',
                    className: 'select-checkbox',
                    orderable: false
                },                
                { data: "employees"}, ....


],
            order: [[1, 'asc']],
            displayLength: 25,
            drawCallback: function (settings) {
                   var api = this.api();
                   var rows = api.rows({ page: 'current' }).nodes();
                   var last = null;

                      api.column(1, { page: 'current' }).data().each(function (group, i) {
                       if (last !== group) {
                           $(rows).eq(i).before(
                             '<tr class="group"><td colspan="5">'+group+'</td></tr>'
                               );

                                last = group;
                                }
                            });
                        },
            select: {
                style: 'multi',
                selector: 'td:first-child'
            },
            buttons: [
                { extend: "create", editor: editor },
                { extend: "edit", editor: editor },
                {
                extend: "selected",
                text: 'Duplicate',
                action: function ( e, dt, node, config ) {
                    // Start in edit mode, and then change to create
                    editor
                        .edit( table.rows( {selected: true} ).indexes(), {
                            title: 'Duplicate record',
                            buttons: 'Create from existing'
                        } )
                        .mode('create');
                }
            },
                { extend: "remove", editor: editor },               
                'pageLength'
            ]
          });

             $(document).on('click', '#update', function () {
                    var a = [] ;
                    $.each(table.rows('.selected').data(), function () {
                        a.push(this.DT_RowId.substring(4));
                        var idRow = table.row( {selected: true}).id().substring(4);                      
                    });
                        var i;
                        for (i = 0; i < a.length; i++) {                            
                            $.ajax(
                                {
                                    type: "POST",
                                    dataType: "JSON",
                                    url: "/Controller/AnotherMethod/" + a[i],

                                });
                    }
                });
   });    

Viewing all articles
Browse latest Browse all 3740