Formatar cnpj a barra não entra (Não consigo deixar o cnpj no formato: 35.654.321/0001-24)

function mascaraMutuario(o,f){

  v_obj=o

  v_fun=f

  setTimeout('execmascara()',1)

}

function execmascara(){

  v_obj.value=v_fun(v_obj.value)

}

function cpfCnpj(v){

  //Remove tudo o que não é dígito

  v=v.replace(/\D/g,"")

  if (v.length <= 14) { //CPF

      //Coloca um ponto entre o terceiro e o quarto dígitos

      v=v.replace(/(\d{3})(\d)/,"$1.$2")

      //Coloca um ponto entre o terceiro e o quarto dígitos

      //de novo (para o segundo bloco de números)

      v=v.replace(/(\d{3})(\d)/,"$1.$2")

      //Coloca um hífen entre o terceiro e o quarto dígitos

      v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2")

  } else { //CNPJ

      //Coloca ponto entre o segundo e o terceiro dígitos

      v=v.replace(/^(\d{2})(\d)/,"$1.$2")

      //Coloca ponto entre o quinto e o sexto dígitos

      v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3")

      //Coloca uma barra entre o oitavo e o nono dígitos

      v=v.replace(/\.(\d{3})(\d)/,".$1/$2")

      //Coloca um hífen depois do bloco de quatro dígitos

      v=v.replace(/(\d{4})(\d)/,"$1-$2")

  }

  return v

}


echo TR_OPEN . TD_OPEN. LABEL_OPEN . 'CPF | CNPJ' . LABEL_CLOSE . TD_CLOSE . TR_CLOSE;

$cliente['CLIENTE_CPF_CNPJ'] = isset($_POST['CLIENTE_CPF_CNPJ']) ? $_POST['CLIENTE_CPF_CNPJ'] : '';

$INPUT = '<input type="text" id="CLIENTE_CPF_CNPJ" name="CLIENTE_CPF_CNPJ" required minlength="14" maxlength="17" onkeypress="mascaraMutuario(this,cpfCnpj)" onblur="clearTimeout()" value="' . $cliente['CLIENTE_CPF_CNPJ'] .'">';

echo TR_OPEN . TD_OPEN. $INPUT . TD_CLOSE . TR_CLOSE;

Faz a formatação com um único replace, acredito que seja mais simples!

# CPF:
"62106473087".replace(/^(\d{3})(\d{3})(\d{3})(\d{2})/, "$1.$2.$3-$4")

# CNPJ:
"14397462000109".replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/, "$1.$2.$3/$4-$5")

Resolvido. Encontrei a fonte correta.