Opa, depois de quase não dormir consegui resolver da seguinte forma, queria ter conseguido sozinho, mas esse link me ajudou.
http://blog.rdtecnologia.com.br/php/passando-dados-via-post-em-javascript/
<table class="table">
<thead>
<tr>
<th>Modalidade</th>
</tr>
</thead>
<tbody>
<c:forEach items="${listaModalidades}" var="modalidades">
<tr>
<td style="display:none;">${modalidades.idModalidades}</td>
<td>${modalidades.nomeModalidadeTemp}</td>
<td><a onclick="sendPost('carregaModalidade', {idModalidades: '${modalidades.idModalidades}'});"><i class="fa fa-pencil"></i></a></td>
<td><a onclick="deletaModalidade(${modalidades.idModalidades})"><i class="fa fa-trash-o"></i></a></td>
</tr>
</c:forEach>
</tbody>
</table>
JS
if (!window.sendPost) {
window.sendPost = function (url, obj) {
//Define o formulário
var myForm = document.createElement("form");
myForm.action = url;
myForm.method = "post";
for (var key in obj) {
var input = document.createElement("input");
input.type = "text";
input.value = obj[key];
input.name = key;
myForm.appendChild(input);
}
//Adiciona o form ao corpo do documento
document.body.appendChild(myForm);
//Envia o formulário
myForm.submit();
};
}