Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 123
  • Last Modified:

Data Tables

I have a DataTable and am able to use some of the previous help I've received on here to add a link to one of the columns that will open a modal.  I need to able to add an event to the table row selection.  I need some examples of how to to this.

I would like to be able to add a background color to the row when it is selected.
Show a Button on the page (that is hidden on page load).
Add an onclick function for the Button that opens a modal and passes some of the data.  


Thank You!
0
Crystal Rouse
Asked:
Crystal Rouse
1 Solution
 
anarki_jimbelCommented:
Do you mean GridView control? Or something else? DataTable is just basically data...
For a GridView see the SelectedIndexChanging event:
https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.selectedindexchanging(v=vs.110).aspx
0
 
Manoj PatilSr. Software EngineerCommented:
Hey,
If you are using Javascript DataTables then you can use a css class to change the background color of the row when select that particular row.

.row_selected td {
    background-color: black !important; /* Add !important to make sure override datables base styles */
 }


Check the URL below for changing the row color on row Click event

https://datatables.net/examples/api/select_single_row.html
Try below code
Javascript
$(document).ready(function() {
    var table = $('#example').DataTable();
 
    $('#example tbody').on( 'click', 'tr', function () {
        if ( $(this).hasClass('selected') ) {
            $(this).removeClass('selected');
        }
        else {
            table.$('tr.selected').removeClass('selected');
            $(this).addClass('selected');
        }
    } );
 
    $('#button').click( function () {
        table.row('.selected').remove().draw( false );
    } );
} );

Open in new window


HTML

<table id="example" class="display" cellspacing="0" width="100%">
        <thead>
            <tr>
                <th>Name</th>
                <th>Position</th>
                <th>Office</th>
                <th>Age</th>
                <th>Start date</th>
                <th>Salary</th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <th>Name</th>
                <th>Position</th>
                <th>Office</th>
                <th>Age</th>
                <th>Start date</th>
                <th>Salary</th>
            </tr>
        </tfoot>
        <tbody>
            <tr>
                <td>Tiger Nixon</td>
                <td>System Architect</td>
                <td>Edinburgh</td>
                <td>61</td>
                <td>2011/04/25</td>
                <td>$320,800</td>
            </tr>
            <tr>
                <td>Garrett Winters</td>
                <td>Accountant</td>
                <td>Tokyo</td>
                <td>63</td>
                <td>2011/07/25</td>
                <td>$170,750</td>
            </tr>
            <tr>
                <td>Ashton Cox</td>
                <td>Junior Technical Author</td>
                <td>San Francisco</td>
                <td>66</td>
                <td>2009/01/12</td>
                <td>$86,000</td>
            </tr>
            <tr>
                <td>Cedric Kelly</td>
                <td>Senior Javascript Developer</td>
                <td>Edinburgh</td>
                <td>22</td>
                <td>2012/03/29</td>
                <td>$433,060</td>
            </tr>
            <tr>
                <td>Airi Satou</td>
                <td>Accountant</td>
                <td>Tokyo</td>
                <td>33</td>
                <td>2008/11/28</td>
                <td>$162,700</td>
            </tr>
        </tbody>
    </table>

Open in new window


CSS
Standard css file which is in JQuery DataTable Package
jquery.dataTables.min.css
0
 
Crystal RouseAuthor Commented:
Thank you for your help!  It worked.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now