Refresh em campo

Pessoal, tem como eu atualizar um campo no JS? Tipo:

Quando digito um valor já existente em um dataSet ele me retorna a mensagem de CNPJ cadastrado. Daí criei essa função:


function limpa_formulario_cpf(){
    $("#A1_NOME").attr("readonly", true);
    $("#A1_NREDUZ").attr("readonly", true);
    $("#A1_CEP").attr("readonly", true);
    $("#A1_DTNASC").attr("readonly", true);                
    $("#A1_INSCR").attr("readonly", true);    
    $("#A1_INSCRM").val("");
    $("#A1_INSCRM").attr("readonly", true);
}

Isso tudo dentro de uma função blur! 
Porém depois que eu saio do campo CNPJ/CPF, ele não entra na função:limpa_formulario_cpf().
Daí se eu clicar novamente no  campo CNPJ/CPF ele entra na função.
Por isso pensei se eu conseguir atualizar o campo, vai funcionar!

chamado.jpg


 $("#campo").refresh();

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

@Quemuel, não entendi. Atualizar campo? Explique a situação que está passando, pra podermos ajudar.

@Gabriel, complementei na pergunta, veja se não ficou confuso!

Em qual momento quer atualizar o campo? Depois que aparece a mensagem CNPJ/CPF já cadastrado! você quer fazer o que?

Quero atualizar depois de aparecer a mensagem CNPJ/CPF, quero que execute a função: limpa_formulario_cpf();, para desabilitar os campos que estiverem habilitados!

Coloca aqui a função onde você consulta se o CPF já existe.

`function busca(){
var cgc = $(“#A1_CGC”).val().replace(/[^a-z0-9\s]/gi, ‘’); //retira caracteres especiais
var c1 = DatasetFactory.createConstraint(“cgc”, cgc, cgc, ConstraintType.MUST);
var ct = new Array(c1);
var dss = DatasetFactory.getDataset(“dsCGC”, null, ct, null);

if(dss.values.length > 0){
   displaymodal("CNPJ/CPF já cadastrado!");
   $("#A1_CGC").val("");
   
}

}`

@Quemuel,

Coloque seu código assim:


function busca(){ 
    var cgc = $("#A1_CGC").val().replace(/[^a-z0-9\s]/gi, ''); 
    //retira caracteres especiais 
    var c1 = DatasetFactory.createConstraint("cgc", cgc, cgc, ConstraintType.MUST); 
    var ct = new Array(c1); 
    var dss = DatasetFactory.getDataset("dsCGC", null, ct, null); 

    if(dss.values.length > 0){ 
        displaymodal("CNPJ/CPF já cadastrado!"); 
        $("#A1_CGC").val(""); 
        limpa_formulario_cpf();
    } 
}

Deu certo @Quemuel?

@Gabriel, ainda não! Enviei na pergunta a parte do meu custom.js que faço a função blur

Coloque um alert dentro dessa função limpa_formulario_cpf() e executa novamente

Nesse arquivo que passou custom.js não tem essa mensagem: CNPJ/CPF já cadastrado!

@Gabriel, adicionei novamente o custom, não havia mandado ele todo!

Você não colocou a função limpa_formulario_cpf(); onde falei, igual coloquei no código da resposta. Dentro da função busca()

@Gabriel, eu coloquei e fiz o teste, como não deu certo retirei para ir tentado outras possibilidades!

Você está executando outros códigos após a chamada da função busca(), coloque ele na última linha dentro do $(“#A1_CGC”).blur(function() {

else if (cnpj.length == 11){ $("#A1_NOME").removeAttr('readonly'); $("#A1_NREDUZ").removeAttr('readonly'); $("#A1_TEL").removeAttr('readonly'); $("#A1_CEP").removeAttr('readonly'); $("#A1_DTNASC").removeAttr('readonly'); if (cnpj == ''){ limpa_formulario_cpf(); }
@Gabriel na parte que vejo se é cpf, coloque esse if e deu certo, muito obg pela ajuda!abs!

Por nada @Quemuel!Abraço