Ir para conteúdo
Jonas Ribeiro Nascimento

Erro javascript “Error: VanillaMasker: There is no element to bind”

Recommended Posts

Tenho esse seguinte problema aparece no console em todas as paginas, somente na pagina de cadastro que não aparece, tipo onde os inputs na tela de cadastro estão sendo usados o erro não aparece.

Segue o erro do console em todas as paginas, menos na pagina de cadastro.

 

vanilla-masker.min.js:49 Uncaught Error: VanillaMasker: There is no element to bind. at h (vanilla-masker.min.js:49) at add-javascript.js:6
  h @ vanilla-masker.min.js:49
  (anonymous) @ add-javascript.js:6

 

pagina do link add-javascript.js

/* global VMasker */

// Mascaras do sistema de cadastro

// Mascara do cep
VMasker(document.querySelector('#Cep')).maskPattern('99999-999');

// Mascara do cpf
VMasker(document.querySelector('#Cpf')).maskPattern('999.999.999-99');

// Mascara do data de nascimento
VMasker(document.querySelector('#dataNascimento')).maskPattern('99/99/9999');

// Mascara do telefone fixo e celular
function inputHandler(masks, max, event) {
	var c = event.target;
	var v = c.value.replace(/\D/g, '');
	var m = c.value.length > max ? 1 : 0;
	VMasker(c).unMask();
	VMasker(c).maskPattern(masks[m]);
	c.value = VMasker.toPattern(v, masks[m]);
}

var telMask = ['(99) 9999-99999', '(99) 99999-9999'];
var tel = document.querySelector('#tel');
VMasker(tel).maskPattern(telMask[0]);
tel.addEventListener('input', inputHandler.bind(undefined, telMask, 14), false);

pagina do link vanilla-masker.min.js

 

! function(a, b) {
    "function" == typeof define && define.amd ? define(b) : a.VMasker = b()
}(this, function() {
    var a = "9",
        b = "A",
        c = "S",
        d = [8, 9, 16, 17, 18, 36, 37, 38, 39, 40, 91, 92, 93],
        e = function(a) {
            for (var b = 0, c = d.length; c > b; b++)
                if (a == d[b]) return !1;
            return !0
        },
        f = function(a) {
            return a = a || {}, a = {
                precision: a.hasOwnProperty("precision") ? a.precision : 2,
                separator: a.separator || ",",
                delimiter: a.delimiter || ".",
                unit: a.unit && a.unit.replace(/[\s]/g, "") + " " || "",
                suffixUnit: a.suffixUnit && " " + a.suffixUnit.replace(/[\s]/g, "") || "",
                zeroCents: a.zeroCents,
                lastOutput: a.lastOutput
            }, a.moneyPrecision = a.zeroCents ? 0 : a.precision, a
        },
        g = function(a) {
            this.elements = a
        };
    g.prototype.unbindElementToMask = function() {
        for (var a = 0, b = this.elements.length; b > a; a++) this.elements[a].lastOutput = "", this.elements[a].onkeyup = !1, this.elements[a].onkeydown = !1, this.elements[a].value.length && (this.elements[a].value = this.elements[a].value.replace(/\D/g, ""))
    }, g.prototype.bindElementToMask = function(a) {
        for (var b = this, c = function(c) {
                c = c || window.event;
                var d = c.target || c.srcElement;
                e(c.keyCode) && setTimeout(function() {
                    b.opts.lastOutput = d.lastOutput, d.value = h[a](d.value, b.opts), d.lastOutput = d.value, d.setSelectionRange && b.opts.suffixUnit && d.setSelectionRange(d.value.length, d.value.length - b.opts.suffixUnit.length)
                }, 0)
            }, d = 0, f = this.elements.length; f > d; d++) this.elements[d].lastOutput = "", this.elements[d].onkeyup = c, this.elements[d].value.length && (this.elements[d].value = h[a](this.elements[d].value, this.opts))
    }, g.prototype.maskMoney = function(a) {
        this.opts = f(a), this.bindElementToMask("toMoney")
    }, g.prototype.maskNumber = function() {
        this.opts = {}, this.bindElementToMask("toNumber")
    }, g.prototype.maskPattern = function(a) {
        this.opts = {
            pattern: a
        }, this.bindElementToMask("toPattern")
    }, g.prototype.unMask = function() {
        this.unbindElementToMask()
    };
    var h = function(a) {
        if (!a) throw new Error("VanillaMasker: There is no element to bind.");
        var b = "length" in a ? a.length ? a : [] : [a];
        return new g(b)
    };
    return h.toMoney = function(a, b) {
        if (b = f(b), b.zeroCents) {
            b.lastOutput = b.lastOutput || "";
            var c = "(" + b.separator + "[0]{0," + b.precision + "})",
                d = new RegExp(c, "g"),
                e = a.toString().replace(/[\D]/g, "").length || 0,
                g = b.lastOutput.toString().replace(/[\D]/g, "").length || 0;
            a = a.toString().replace(d, ""), g > e && (a = a.slice(0, a.length - 1))
        }
        var h = a.toString().replace(/[\D]/g, ""),
            i = new RegExp("^(0|\\" + b.delimiter + ")"),
            j = new RegExp("(\\" + b.separator + ")$"),
            k = h.substr(0, h.length - b.moneyPrecision),
            l = k.substr(0, k.length % 3),
            m = new Array(b.precision + 1).join("0");
        k = k.substr(k.length % 3, k.length);
        for (var n = 0, o = k.length; o > n; n++) n % 3 === 0 && (l += b.delimiter), l += k[n];
        if (l = l.replace(i, ""), l = l.length ? l : "0", !b.zeroCents) {
            var p = h.length - b.precision,
                q = h.substr(p, b.precision),
                r = q.length,
                s = b.precision > r ? b.precision : r;
            m = (m + q).slice(-s)
        }
        var t = b.unit + l + b.separator + m + b.suffixUnit;
        return t.replace(j, "")
    }, h.toPattern = function(d, e) {
        var f, g = "object" == typeof e ? e.pattern : e,
            h = g.replace(/\W/g, ""),
            i = g.split(""),
            j = d.toString().replace(/\W/g, ""),
            k = j.replace(/\W/g, ""),
            l = 0,
            m = i.length;
        for (f = 0; m > f; f++) {
            if (l >= j.length) {
                if (h.length == k.length) return i.join("");
                break
            }
            i[f] === a && j[l].match(/[0-9]/) || i[f] === b && j[l].match(/[a-zA-Z]/) || i[f] === c && j[l].match(/[0-9a-zA-Z]/) ? i[f] = j[l++] : (i[f] === a || i[f] === b || i[f] === c) && (i = i.slice(0, f))
        }
        return i.join("").substr(0, f)
    }, h.toNumber = function(a) {
        return a.toString().replace(/(?!^-)[^0-9]/g, "")
    }, h
});

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por dba.amaro
      Galera, bom dia/tarde/noite, 
       
      Estou desenvolvendo uma aplicação web, porém preciso mostrar algumas informações e os objetos vão mudar de cor / porcentagem, segundo as informações que estão contidas no banco de dados, 
       
      Tenho, algumas ideias, porém não sei nem por onde começar, se alguém puder ajudar, agradeço !!
       
      Um abraço  a todos e bons posts!
    • Por Malebo
      Boas.
       
      Estou a três semana com erro abaixo, preciso da vossa ajura para poder baixar as imagens do mysql no laradock.
      Abaixo o trecho de codigo, quando executou docker-compose up -d mysql ele nunca sai desta tela.
       
      $ docker-compose build --no-cache mysql
      Building mysql
      Step 1/9 : ARG MYSQL_VERSION=8.0
      Step 2/9 : FROM mysql:${MYSQL_VERSION}
      8.0: Pulling from library/mysql
       
    • Por zinleo1
      Estou precisando consultar o endereço(tipo_logradouro e logradouro) de um cliente no meu banco de dados mas to tendo problemas no select, alguém consegue me ajudar, como faço para dar select em duas tabelas? Segue o código:
       
       

      <html>
          <head>
              <meta charset="UTF-8">
              <title></title>
          </head>
          <body>
      <fieldset>
      <legend>Lista de Registros</legend>
      <table border="1" width="100%">
       <tr>
            <th>Código do Usuário</th>
            <th>Nome do Usuário</th>
            <th>Sobrenome do Usuário</th>
            <th>Tipo de Logradouro</th>
            <th>Logradouro</th>
       </tr>
       
      <?php
          
          if(isset($_POST["consultar"])){
                  $nome = $_POST['nome'];
                  $sobrenome = $_POST['sobrenome'];
                  
                          
                 
               include('conexao.php');
          
                  $sqlconsultaraluno= "select * from aluno where nome_aluno='$nome' or sobrenome_aluno='$sobrenome'"; 
                  $consultaraluno = mysqli_query($con,$sqlconsultaraluno);
                              
                 $i = 0;
              if (mysqli_num_rows($consultaraluno, $consultarendereco) == 0){
                  echo "<h4>Nenhum Registro Encontrado!</h4>";
              }
              else{
              while ($linha = mysqli_fetch_array($consultarendereco)) {
                 $cod_aluno = $linha["cod_aluno"];
                 $nome = $linha["nome_aluno"];
                 $sobrenome = $linha["sobrenome_aluno"];
                         $tipologradouro = $linha['tipo_logradouro'];
                         $logradouro = $linha ['logradouro'];    
                         
                 if ($i % 2 == 0){
                    $cor = "#DDDDDD";
                 }
                 else{
                    $cor = "#FFFFFF";
                 }
                         
                 
          ?>
              <tr bgcolor="<?php echo $cor; ?>"
                          <td></td>
                          <td><?php echo $cod_aluno; ?></td>
                          <td><?php echo $nome; ?></td>
                          <td><?php echo $sobrenome; ?></td>
                          <td><?php echo $tipologradouro; ?></td>
                          <td><?php echo $logradouro; ?></td>
                          
                         
                          <td><?php echo "<a href='editar_usuario.php?id=".$linha["cod_aluno"]."'>Editar</a>";?></td>
                          <td><?php echo "<a href='deletar_usuario.php?id=".$linha["cod_aluno"]."'>Deletar</a>";?></td>
              </tr>
               
              <?php
                 $i++;
                         
              }
          }
        
              }
                      
      ?>
      </table>
          </body>
      </html>
    • Por diogoglobaltec
      criei um formulário dinamico e gostaria de enviar para o arquivo rec.php, os aquivos adicionados pelo no formato file , já tentei colocar em
       x.setAttribute("enctype" , "multipart/form-data");
      também não funcionou segue o arquivo:
       
      <!DOCTYPE html>
          <html>
              <body>
              
                  
                  
                  <p>Click the button to create a FORM and an INPUT element.</p>
                  <button onclick="myFunction()">Try it</button>
                  <button onclick="enviar()">enviar</button>
          <script>
          function myFunction() {
            var x = document.createElement("FORM");
            x.setAttribute("action", "rec.php");
          x.setAttribute("method", "post");
          x.setAttribute("id", "myForm");
            document.body.appendChild(x);

            var y = document.createElement("INPUT");
            y.setAttribute("type", "file");
            y.setAttribute("name", "arquivo[]");
            document.getElementById("myForm").appendChild(y);
      }
           function enviar(){
              document.forms[0].submit(); 
          
          }
          </script>

              </body>
      </html>
       
      consigo pegar no arquivo rec.php o valor de $_POST , mas de $_FILES não consigo pegar como um array, o que está dando errado ? segue o  script PHP 
       
      Arquivo rec.php
      <?php
      foreach($_POST['arquivo'] as $value) {
              echo $value."<br />";
      }
      foreach($_FILES['arquivo'] as $value) {
                     echo $value['arquivo']['name']."<br />";
      }
       
       
       
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.