Boas
No formulário, Por vezes tenho a necessidade de aplicar uma instrução / macro onde após a atualização de 1 ou mais campos de 1 registo, o mesmo seja atualizado automaticamente sem necessidade de clicar no botão “ATUALIZAR”
A razão é simples alguns utilizadores efetuam a alteração no(s) campos(s) e esquecem-se de clicar em ATUALIZAR, assim seria uma segurança na atualização de dados.
Criando eventos Ajax onchange nos campos e executando a instrução já de salvamento.
Algum exemplo disponível?
Evento Ajax Onchange do campo que deseja o salvamento automático.
[var_prox_campo]='Nome';
if ({id}): // campo pk da tabela do formulário
	$arr=['incluir'];
//echo "estou incluindo";
else:
	$arr=['alterar'];
//echo "estou alterando";
endif;
sc_ajax_javascript('nm_atualiza',$arr);evento onscriptinit:
sc_set_focus([var_prox_campo]);Configurar para Retornar após inclusão em Aplicações/Navegação.
Em variareis globais configure var_prox_campo como não sessão, não get, não post, opcional de saída.
Se não desejar aparecer o Processando do evento ajax pode usar em javascript e exibir uma msg temporária de dados salvos.
^^^
*** Testado ***
Da para fazer mais automático para todos os campos mas acho mais arriscado, ideal mesmo é escolher os campos principais do formulário e criando os eventos onchange de cada um e colando o código acima.
Segue um teste de captura de qualquer campo alterado (evento onload):
?><script>
$(document).ready(function() {
$('form').change(function() {
  alert('alterou');
   });
});
</script><?phpNo logar do alert nm_atualiza(‘alterar’) ou nm_atualiza(‘incluir’) conforma a situação.
TAGS: Haroldo, Salvamento, Automático, Campos, Onchange, Incluir, Alterar
Usando automático para todos os campos.
evento onscriptinit:
if ({id}): //campo pk autoincrement da tabela do formulário
	$js='0';
else:
	$js='1';
endif;
echo "<script> var jsFlag = $js; </script>";
	Evento onload:
?><script>
$(document).ready(function() {
$('form[name=F1]').change(function() {
    if (jsFlag==0) {
		nm_atualiza('incluir');
		return false;
	}else{
		nm_atualiza('alterar');
		return false;
	}
   });
});
</script><?php*** Fica por conta e risco de quem for usar.
*** Esse exemplo não muda o foco para o próximo campo.
TAGS: Haroldo, Salvamento, Automático, Campos, Onchange, Incluir, Alterar
Obrigado pelos Exemplos…
Opa, Haroldo to com uma duvida aqui, não to conseguindo atualizar …
o codigo que efetue é o seguinte:
nao estou conseguindo identificar o problema.
