Tenho uma página php que usa ajax pra carregar uma tabela sem dar refresh e mais uma função js que desabilita o botão "Buscar" enquanto a tabela é carregada. O problema é o seguinte: antes de eu colocar essa função que desabilita o botão, o ajax carregava a tabela normalmente na página. Agora, ele ainda carrega a tabela, porém carrega também uma cópia dos filtros select options que uso pra fazer a pesquisa. Não faço idéia do que aconteceu.... Alguém pode me ajudar ? Segue o código: <div id="formulario" class="container-fluid">
<div class="row">
<div class="plRel" id="relpesq">
<form class="form-inline" method="post" name="formpesq" action="/pesquisa_log.php" id="formpesq">
<input type="hidden" name="funcao" id="funcao" value="pesquisa"/>
<div class="form-group">
<label>Empresa</label>
<select class="form-control" name="codempresa" value="codempresa" id="codempresa" onchange="javascript:buscar();" style="width: 250px;"><?=$selectempresa?></select>
</div><br>
<div class="form-group" style="margin-top: 5px">
<label style="margin-right: 5px">Usuario</label>
<input type="text" class="form-control" name="nomeusuario" id="nomeusuario" style="width: 250px;" onchange="javascript:nomes();"/>
<select class="form-control" name="usuario" id="usuario" style="width: 250px;"></select>
</div>
<div class="form-group" style="padding-top: 6px">
<label style="margin-left: 15px">De</label>
<input type="date" class="form-control" name="datade" id="datade" style="margin-left: 2px"/>
</div>
<div class="form-group" style="margin-top: 5px">
<label style="margin-right: 8px">Cliente</label>
<input type="text" class="form-control" name="nomecliente" id="nomecliente" style="width: 250px;" onchange="javascript:nomeclientes();"/>
<select class="form-control" name="codcliente" id="codcliente" style="width: 250px;"></select>
</div>
<div class="form-group" style="padding-top: 6px">
<label style="margin-left: 15px">Até</label>
<input type="date" class="form-control" name="dataate" id="dataate" style="margin-left: 0px"/>
</div><br>
<div class="form-group" style="margin-top: 5px">
<label style="margin-left: -5px">Tipo Log</label>
<select class="form-control" name="tipoentradalog" id="tipoentradalog" style="width: 250px;"><? foreach($rst2 as &$row) { echo("<option value='".$row['codtipoentradalog']."'>".$row['nome']."</option>");} ?></select>
</div>
<button type="button" style="margin: 6px 0px 0px 2px" id="botao" name="botao" onclick="javascript:carregartabela();" class="btn btn-default">Buscar</button>
</form>
</div><br>
</div>
</div>
</div>
<div id="tabela"></div>function carregartabela(){
if($("#codempresa").val() == ""){
alert("Selecione a empresa.");
$("#codempresa").focus();
return;
} else {
$("#funcao").val("pesquisa");
data = $('#formpesq').serialize();
var jqxhr = $.ajax({
url: "/pesquisa_log.php",
type: "POST",
timeout: default_timeout,
data: data
})
.done(function (retorno) {
arr = retorno;
$('#tabela').replaceWith('<table id="carrtab">' + arr + '</table>');
console.log(arr);
});
}
}
$(function(){
$('#botao').on('click', function(){
var self = $(this);
$.ajax({
url: 'pesquisa_log.php',
beforeSend: function(){
self.attr('disabled', 'true');
},
complete: function(){
self.removeAttr('disabled');
}
});
});
});if($funcao == 'pesquisa') {
?>
<table class="table table-bordered table-hover center-text" name="carrtab" id="carrtab"
style="background-color: #ffffff;">
<thead align="center">
<tr class="danger">
<th class="text-center">Data</th>
<th class="text-center">Tipo</th>
<th class="text-center">Descrição</th>
<th class="text-center">Cliente</th>
<th class="text-center">Usuario</th>
<th class="text-center">Link</th>
</tr>
</thead>
<tbody>
<?
$tipoentradalog = post('tipoentradalog');
$usuario = post('usuario');
$codcliente = post('codcliente');
$datade = post('datade');
$dataate = post('dataate');
$codigo = post('codigo');
$sql = "SELECT
l.datacriacao,
tl.nome as tipo,
l.descricao,
cli.nome as cliente,
us.nome as usuario,
l.codigo
FROM log l
INNER JOIN cliente cli ON cli.codcliente=l.codcliente
INNER JOIN usuario us ON us.codusuario=l.codusuario
INNER JOIN empresa emp ON emp.codempresa=l.codempresa
INNER JOIN tipoentradalog tl ON tl.codtipoentradalog=l.codtipoentradalog
WHERE
cli.codempresa=$codempresa AND
l.datacriacao BETWEEN '$datade%' AND '$dataate%' ";
if (!empty($usuario))
$sql .= " and us.codusuario=$usuario ";
if (!empty($codcliente))
$sql .= " and cli.codcliente=$codcliente ";
if (!empty($tipoentradalog))
$sql .= " and tl.codtipoentradalog=$tipoentradalog ";
$rst = my_query($connR, $sql);
foreach ($rst as $row) {
?>
<tr>
<td align="center"><?= normalDate($row['datacriacao']); ?></td>
<td align="center"><?= $row['tipo'] ?></td>
<td align="center"><?= $row['descricao'] ?></td>
<td align="center"><?= $row['cliente'] ?></td>
<td align="center"><?= $row['usuario'] ?></td>
<td align="center">
<a href="loadmodal.php?codigo=<?= $row['codigo'] ?>" data-toggle="meumodal"
data-target="#modalContainer" class="link-target" role="link" aria-expanded="false"
aria-controls="modalContainer"
style="text-decoration: none; color: black;"><?= $row['codigo'] ?></a>
</td>
</tr>
<?
if (!empty($row['codigo'])) {
global $codigo;
$codigo = $row['codigo'];
}
}
?>
</tbody>
</table>Obrigada.