atualizar input sem refresh na página
Olá pessoal.... estou tendo dificuldades em atualizar o input com um novo preço atualizando o banco de dados.... segue o cod em codeIgniter
Input
echo '<td style=text-align:center>R$ <input name="precoVendaOs" id="precoVendaOs" value='.number_format($valor_final,2,',','.').' class="span2"></input>';
echo '<a href="" idAcaoAtualiza="'.$p->idProdutos_os.'" precoVendaOs="'.$p->precoVendaOs.'"> <i class="icon-white icon-refresh"></i></a></td>';
java
$(document).on('click', 'a', function(event) {
var idProdutos_os = $(this).attr('idAcaoAtualiza');
var precoVendaOs = $(this).attr('precoVendaOs');
$.ajax({
type: "POST",
url: "<?php echo base_url();?>index.php/os/atualizaPreco",
data: "idProdutos_os="+idProdutos_os+"&precoVendaOs="+precoVendaOs,
dataType: 'json',
success: function(data)
{
if(data.result == true){
$("#divProdutos" ).load("<?php echo current_url();?> #divProdutos" );
$("#precoVendaOs").val('').focus();
}
else{
alert('Ocorreu um erro ao tentar atualizar o preco.');
}
}
});
});
CodeIgniter - Controller
function atualizaPreco(){
$ID = $this->input->post('idProduto_os');
if($this->os_model->update('produtos_os','precoVendaOs',$ID) == true){
$precoVendaOs = $this->input->post('precoVendaOs');
$sql = "UPDATE produtos_os set precoVendaOs = precoVendaOs + ? WHERE idProdutos_os = ?";
$this->db->query($sql, array($precoVendaOs));
echo json_encode(array('result'=> true));
}
else{
echo json_encode(array('result'=> false));
}
}
Model
function update($table,$data,$fieldID,$ID){
$this->db->where($fieldID,$ID);
$this->db->update($table, $data);
if ($this->db->affected_rows() >= 0)
{
return TRUE;
}
return FALSE;
}Discussão (4)
Carregando comentários...