<!DOCTYPE html>
<html>
  <head>
    <script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
    <link href="https://nightly.datatables.net/css/jquery.dataTables.css" rel="stylesheet" type="text/css" />
    <script src="https://nightly.datatables.net/js/jquery.dataTables.js"></script>
    <meta charset=utf-8 />
    <title>DataTables - JS Bin</title>
  </head>
  <body>
    <div class="container">
      <button id="find">Find #01.dat</button>
      <button id="update">Update 01.dat to 001.dat</button>
      <table id="example" class="display nowrap" width="100%">
        <thead>
          <tr>
            <th>Name</th>
            <th>Location</th>
          </tr>
        </thead>
        <tfoot>
          <tr>
            <th>Name</th>
            <th>Location</th>
          </tr>
        </tfoot>
      </table>
    </div>
  </body>
</html>
 
body {
  font: 90%/1.45em "Helvetica Neue", HelveticaNeue, Verdana, Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
  color: #333;
  background-color: #fff;
}
 
$(document).ready( function () {
  
  var data = [
    {
      id: '01.dat',
      name: 'Test 01',
      location: 'loc 01'
    },
    {
      id: '02.dat',
      name: 'Test 02',
      location: 'loc 02'
    },
  ];
    
  var table = $('#example').DataTable({
    rowId: 'id',
    data: data,
    columns: [
      {
        data: 'name'
      },
      {
        data: 'location'
      }
    ]
  });
  $('#find').on('click', function () {
    var oldId = '01.dat';
    var row = table.row('#' + oldId);
    console.log('01.dat name: ' + row.data().name)    
  });
  
  $('#update').on('click', function () {
    var oldId = '01.dat';
    var row = table.row('#' + oldId);
    
    //var newId = '001dat';  // This works without period
    var newId = '001.dat'  // Doesn't work with period
    
    var data = row.data();
    data.id = newId;
    row.data( data ).draw();
    
    newId = newId.replace('.', '\\.');
    
    console.log( 'jQUery find #' + newId + ': ' + $('#' + newId).length );
    
    var updatedRow = table.row('#' + newId);
    console.log('Found updated row name: ' + updatedRow.data().name)    
  });
} );
3 errors
Line 34: Missing semicolon.
Line 42: Missing semicolon.
Line 54: Missing semicolon.
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
anonymouspro
0viewers