Confluence Table

Confluence Table

by dgoodw01

HTML

<button>Execute Code</button>
<div class="table-wrap">
  <table class="wrapped confluenceTable">
    <colgroup>
      <col />
      <col />
    </colgroup>
    <tbody>
      <tr>
        <th class="confluenceTh">Id</th>
        <th class="confluenceTh">RedirectPage</th>
      </tr>
      <tr>
        <td class="confluenceTd">1</td>
        <td class="confluenceTd">FAQs</td>
      </tr>
      <tr>
        <td class="confluenceTd">2</td>
        <td class="confluenceTd">How-To</td>
      </tr>
      <tr>
        <td colspan="1" class="confluenceTd">3</td>
        <td colspan="1" class="confluenceTd">Videos</td>
      </tr>
    </tbody>
  </table>
</div>

JavaScript

var button = $('button');
button.on("click", function() {

  var tableData = [];
  var tableRows = jQuery('.confluenceTable tr:has(td.confluenceTd)'); //filter out header row

  jQuery(tableRows).each(function(row, tr) {
    tableData[row] = {
      "id": jQuery(tr).find('td:eq(0)').text(),
      "redirectPage": jQuery(tr).find('td:eq(1)').text()
    }
  });

  // I.E. doesn't support find, but here's the code: tableData.find(x => x.id === '1');
  var matchingAction = tableData.filter(function(x) {
    return x.id === '1'
  })[0];

  alert(matchingAction.redirectPage);
  
  $.urlParam = function(name) {
    var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(url);
    return (results !== null) ? results[1] || 0 : false;
  }

  var url = "https://rsdoc.rocksolidretail.com/display/SI/Shelf+IQ?actionId=1";
  alert($.urlParam('actionId'));
});