Jump to content

Search the Community

Showing results for tags 'JavaScript'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Web Development
    • HTML e CSS
    • Javascript
    • PHP
    • Ruby
    • Python
    • Java
    • .NET
    • Docker, Kubernets and other environments
    • WordPress
    • Mobile
    • Agile
    • Desenvolvimento de Games
    • Banco de Dados
    • Design and UX
    • Algoritmos & Outras Tecnologias
  • Entretenimento e uso pessoal
    • Segurança & Malwares
    • Geral
    • iMasters's pub

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 1768 results

  1. Estou mechendo com uma função aqui e não estou conseguindo elaborar um calculo para filtrar quais elementos serão os alvos. Basicamente serão listas, ao licar em um item de uma lista todas as demais listas mostram o mesmo resultado. Tudo bem até então... O problema está em: Ao clicar no segundo item da lista os dois próximos itens são exibidos, ao clicar por exempo no item 3 o item 2 e 4 também são exibidos e ao clicar no penúltimo item os dois itens anteriores devem ser exibidos. Sempre assim 3 itens serão exibidos ao mesmo tempo em cada lista, e sempre ignorando o primeiro e o último item de cada lista e dando destaque ao item clicado. Como o primeiro e o ultimo não vão ser ocultados digamos que o segundo é o primeiro e penúltimo é o ultimo, pois eles serão usados para navegar ao primeiro e o último. Quem quiser dar um força aqui agradeço porque não estou vendo um solução para o caso, pode ser até algo bobo que não está me vindo a cabeça. Segue o código: Na verdade a coisa é bem mais complexa que isso, mas resolvendo esse exemplo posso chegar a solução da função real, isso apresentado aqui só foi para simplificar para o fórum.
  2. Meu programa não consegue identificar o dotenv na middleware Eu estava fazendo um CRUD simples, implementei o dotenv no meu programa, está funcionando quando faço a conexão com o banco de dados e a inserção e uma função normal, mais quando vou fazer isso dentro de uma middleware ele não chama meu dotenv, só funciona quando tiro o process.env e ponho as informações direto na função de conexão. require( 'dotenv' ).config( { path: '../../.env' } ) const mysql = require( 'mysql2' ) // DESSA FORMA NÃO FUNCIONA const connection_pool = mysql.createPool( { host: process.env.DB_HOST, user: process.env.DB_USER, database: process.env.DB_DATABASE, password: process.env.DB_PASS } ) // DESSA FORMA FUNCIONA // const connection_pool = mysql.createPool( { // host: 'localhost', // user: 'carlos', // database: 'simple_crud', // password: 'pass1241' // } ) module.exports = connection_pool.promise() INSERÇÃO NO BANCO DE DADOS const db_conn = require( '../db/connection' ) const createNewClient = ( name ) => { return db_conn.execute( `INSERT INTO client ( name ) values (?)`, [ name ] ) } module.exports = { createNewClient } FAZENDO A INSERÇÃO NO MIDDLEWARE const data = require( '../data/client' ) const createClient = ( req, res, next ) => { const client = req.body.name data.createNewClient( client ) .then( () => { res.status( 200 ).json( { 'status': 'sucess', 'client': client } ) } ) .catch( ( err ) => { res.status( 404 ).json( { status: 'error', error: err } ) } ) .finally( () => { next() } ) } module.exports = { createClient } { "status": "error", "error": { "message": "Access denied for user ''@'localhost' (using password: YES)", "code": "ER_ACCESS_DENIED_ERROR", "errno": 1045, "sqlState": "28000", "sqlMessage": "Access denied for user ''@'localhost' (using password: YES)" } } Esse é o erro que obtenho quando uso o dotenv, lenbrando que as informações de login estão todas certas, e que em outra função que não seja um middleware funciona.
  3. Felipe Guedes Coutinho

    Como ler arquivo TXT com JS Puro?

    Galera, estou precisando ler 1 arquivo TXT mas não quero usar nenhum INPUT para carregar o arquivo. Eu tenho uma estrutura de pasta onde os meus arquivos TXT ficaram fisicamente e no meu código HTML + JS quero que ao alterar um SELECT OPTION, através da escolha eu validar se o arquivo com o nome selecionado existe na página e se existir eu ler ele e adicionando em um elemento qualquer, uma DIV como conteúdo ou dentro de uma TEXTAREA. Vou montar a estrutura de pasta abaixo e colocar imagens de exemplo: Estrutura de pasta projeto index.html dclgen <-- Aqui dentro tenho vários arquivos do formato TXT t1.txt t2.txt t3.txt ... t4.txt Pasta DCLGEN dentro da pasta projeto e a pasta DCLGEN junto com o arquivo HTML Ao escolher no SELECT o nome T1 quero que o JavaScript veja se o arquivo t1.txt existe e se existir quero LER o conteúdo dele e jogar em um ELEMENTO HTML. Preciso fazer isso da forma mais "SIMPLES" possível usando HTML e JavaScript. Alguém pode dar um help? Pesquisei no Google muitas opções e os códigos encontrados não me atenderam. Não quero ser obrigado a fazer um "UPLOAD" usando um INPUT do TIPO FILE, quero usar algo já dentro da pasta do projeto. <!DOCTYPE html> <html> <head> <title>Read Text File Tutorial</title> </head> <body> <input type="file" onchange="loadFile(this.files[0])"> <br> <pre id="output"></pre> <script> async function loadFile(file) { let text = await file.text(); document.getElementById('output').textContent = text; } </script> </body> </html> Código usando FileReader, mas que também está usando um INPUT como estimúlo, não é o que quero. document.getElementById('file').onchange = function(){ var file = this.files[0]; var reader = new FileReader(); reader.onload = function(progressEvent){ var fileContentArray = this.result.split(/\r\n|\n/); for(var line = 0; line < lines.length-1; line++){ console.log(line + " --> "+ lines[line]); } }; reader.readAsText(file); }; Encontrei esse código também, mas não consegui usar... Esse é o parâmetro passado na url "https://dicasdejavascript.com.br/exemplo.txt" function lerURL(URL) { var http = new XMLHttpRequest(); http.open("GET", URL, false); http.send(); console.log(http.responseText); } Espero que alguém consiga me ajudar... Desde já agradeço. Atenciosamente. Felipe Coutinho
  4. Ola! Tenho uma lista de usuários e um link que abre uma div que mostra os detalhes deste usuario, este link usa o evento onClick do javascript. O problema é que quando clicado para abrir a div, a tela sobe para o inicio do topo. Preciso que a tela nao faça a rolagem para o topo e sim que fique na posição da lista. Segue meu codigo abaixo. Obrigado por momento <div class="container"> <div class="row"> <?php foreach para listar os usuários.... ?> <div class="col-10"> Nome do usuário </div> <div class="col-2"> <a href="#" onClick="Mudarestado('minhaDiv<?=$cod?>')"><img src="icons/chevron-right.svg"></a> </div> *** Parte ficará visivel ao clicar no link OnClick *** <div class="divacoes" id="minhaDiv<?=$cod?>" style="display:none"> <div class="row"> <div class="col"> ... dados dos usuarios... </div> </div> </div> *** **** <?php fim foreach que gera a lista de usuários... ?> </div> </div> <style> .divacoes { background-color: #64A338; border: none; padding: 20px; width: 97%; height: 80px; } </style> <script> function Mudarestado(el) { var display = document.getElementById(el).style.display; if (display == "none") document.getElementById(el).style.display = 'block'; else document.getElementById(el).style.display = 'none'; } </script>
  5. Boa noite pessoal, Tenho o seguinte código em .Net que faz a comparação de uma senha que foi criptografada e salva no banco com a senha comum que o usuário conhece. O algoritmo que desenvolvi foi esse da image.png porem preciso converter essa verificação para JavaScript pela seguinte necessidade, será uma aplicação em electron e ela poderá funcionar offline então não terei como mandar a verificação para o servidor. Existe alguma possibilidade? Desde já agradeço.
  6. Wanderson Moreira

    javascript nao funciona com async

    Bom dia, alguém pode me ajudar com uma situação? estou utilizando um script pra fazer o carregamento assíncrono do site. var links = document.querySelectorAll('a'); function handleClick(event) { event.preventDefault(); fetchPage(event.target.href); window.history.pushState(null, null, event.target.href); window.scrollTo(0, 0); } async function fetchPage(url) { document.querySelector('.content'); var pageResponse = await fetch(url); var pageText = await pageResponse.text(); replaceContent(pageText); } function replaceContent(newText) { var newHtml = document.createElement('div'); newHtml.innerHTML = newText; var oldContent = document.querySelector('.content'); var newContent = newHtml.querySelector('.content'); oldContent.innerHTML = newContent.innerHTML; document.title = newHtml.querySelector('title').innerText; } window.addEventListener('popstate', () => { fetchPage(window.location.href); }) links.forEach(link => { link.addEventListener('click', handleClick); }) O problema em questão é que, o conteúdo da pagina que é carregado dentro da div content não funciona corretamente os scripts em javascript não são executados; os links de navegação da pagina não funcionam de maneira assincrona, diferente dos links de navegação do menu
  7. <div id="ctl00_Main_withdrawal_ctl00_PaymentMethodControl"> <div class="clr"> <div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankCountry11_msg" cnt="<span>Campo inválido</span><br/>" req="<span>O campo deve ser completado</span><br/>" fnm="País do Banco" class="valdnPnl"> <div class="lbl">País do Banco</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl02_ctrl" class=" ctrlPnl ddl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankCountry11"> <select name="ctl00$Main$withdrawal$ctl00$cWd$BankCountry" onchange="javascript:setTimeout('__doPostBack(\'ctl00$Main$withdrawal$ctl00$cWd$BankCountry\',\'\')', 0)" id="ctl00_Main_withdrawal_ctl00_cWd_BankCountry" tabindex="1" validate="con" group="Bank" style="width:100%" evt=""> <option value="2">Afeganistão</option> <option value="3">Albânia</option> <option value="4">Argélia</option> <option value="5">Samoa Americana</option> <option value="6">Andorra</option> <option value="8">Angola</option> <option value="7">Anguilla</option> <option value="9">Antígua e Barbuda</option> <option value="10">Argentina</option> <option value="11">Armênia</option> <option value="12">Aruba</option> <option value="13">Austrália</option> <option value="14">Áustria</option> <option value="15">Azerbaijão</option> <option value="16">Bahamas</option> <option value="17">Bahrein</option> <option value="18">Bangladesh</option> <option value="19">Barbados</option> <option value="20">Bielorrússia</option> <option value="22">Bélgica</option> <option value="21">Belize</option> <option value="23">Benim</option> <option value="24">Bermudas</option> <option value="25">Bolívia</option> <option value="26">Bósnia e Herzegovina</option> <option value="27">Botsuana</option> <option selected="selected" value="28">Brasil</option> <option value="29">Ilhas Virgens Britânicas</option> <option value="30">Brunei </option> <option value="270">Buenos Aires City</option> <option value="271">Buenos Aires Province</option> <option value="31">Bulgária</option> <option value="32">Burkina Faso</option> <option value="33">Burundi</option> <option value="34">Camboja</option> <option value="35">Camarões</option> <option value="36">Canadá</option> <option value="272">Canada - Ontario</option> <option value="37">Cabo Verde</option> <option value="38">Ilhas Caimão</option> <option value="39">República Centro-Africana</option> <option value="40">Chade</option> <option value="41">Chile</option> <option value="42">China</option> <option value="44">Colômbia</option> <option value="45">Congo</option> <option value="46">Ilhas Cook</option> <option value="47">Costa Rica</option> <option value="50">Croácia</option> <option value="49">Cuba</option> <option value="260">Curaçau</option> <option value="51">Chipre</option> <option value="52">República Checa</option> <option value="53">Repúb. Democrática do Congo</option> <option value="54">Dinamarca</option> <option value="55">Djibuti</option> <option value="56">Dominica</option> <option value="57">República Dominicana</option> <option value="58">Equador</option> <option value="59">Egito</option> <option value="60">El Salvador</option> <option value="62">Guiné Equatorial</option> <option value="63">Eritreia</option> <option value="64">Estônia</option> <option value="65">Etiópia</option> <option value="66">Ilhas Faroé</option> <option value="67">Ilhas Fiji</option> <option value="68">Finlândia</option> <option value="70">França</option> <option value="69">Guiana Francesa</option> <option value="183">Polinésia Francesa</option> <option value="72">Gabão</option> <option value="73">Gâmbia</option> <option value="74">Geórgia</option> <option value="75">Alemanha</option> <option value="76">Gana</option> <option value="77">Gibraltar</option> <option value="78">Grécia</option> <option value="218">Groenlândia</option> <option value="79">Granada</option> <option value="81">Guadalupe</option> <option value="80">Guam</option> <option value="82">Guatemala</option> <option value="83">Guiné</option> <option value="84">Guiné-Bissau</option> <option value="85">Guiana</option> <option value="86">Haiti</option> <option value="87">Honduras</option> <option value="88">Hong Kong</option> <option value="89">Hungria</option> <option value="90">Islândia</option> <option value="91">Índia</option> <option value="92">Indonésia</option> <option value="93">Iraque</option> <option value="95">Irlanda (Rep. Da)</option> <option value="222">Ilha de Man</option> <option value="96">Israel</option> <option value="97">Italia</option> <option value="48">Costa do Marfim</option> <option value="98">Jamaica</option> <option value="99">Japão</option> <option value="100">Jordânia</option> <option value="101">Cazaquistão</option> <option value="102">Quênia</option> <option value="103">Coreia do Norte</option> <option value="104">Coreia do Sul</option> <option value="266">Kosovo</option> <option value="105">Kuwait</option> <option value="106">Quirguistão</option> <option value="107">Laos</option> <option value="108">Letônia</option> <option value="109">Líbano</option> <option value="110">Lesoto</option> <option value="111">Libéria</option> <option value="112">Libía</option> <option value="113">Liechtenstein</option> <option value="114">Lituânia</option> <option value="115">Luxemburgo</option> <option value="116">Macau</option> <option value="214">Macedônia</option> <option value="117">Madagascar</option> <option value="118">Malawi</option> <option value="121">Malásia</option> <option value="122">Maldivas</option> <option value="119">Mali</option> <option value="120">Malta</option> <option value="123">Martinica</option> <option value="124">Mauritânia</option> <option value="125">Maurícia</option> <option value="126">México</option> <option value="127">Moldávia</option> <option value="224">Mônaco</option> <option value="128">Mongólia</option> <option value="225">Montenegro</option> <option value="129">Montserrat</option> <option value="130">Marrocos</option> <option value="131">Moçambique</option> <option value="132">Myanmar</option> <option value="133">Namíbia</option> <option value="134">Nepal</option> <option value="135">Holanda</option> <option value="136">Antilhas Holandesas</option> <option value="137">Nova Caledónia</option> <option value="138">Nova Zelândia</option> <option value="139">Nicarágua</option> <option value="140">Níger</option> <option value="141">Nigéria</option> <option value="143">Noruega</option> <option value="144">Omã</option> <option value="145">Paquistão</option> <option value="146">Palestina</option> <option value="147">Panamá</option> <option value="148">Papua Nova Guiné</option> <option value="149">Paraguai</option> <option value="150">Peru</option> <option value="151">Filipinas</option> <option value="152">Polónia</option> <option value="153">Portugal</option> <option value="154">Porto Rico</option> <option value="155">Qatar</option> <option value="156">Roménia</option> <option value="158">Rússia</option> <option value="157">Ruanda</option> <option value="159">San Marino</option> <option value="160">São Tomé e Príncipe</option> <option value="161">Arábia Saudita</option> <option value="163">Senegal</option> <option value="240">Sérvia</option> <option value="164">Seychelles</option> <option value="165">Serra Leoa</option> <option value="166">Singapura</option> <option value="172">Eslováquia</option> <option value="167">Eslovénia</option> <option value="168">Ilhas Salomão</option> <option value="170">Somália</option> <option value="169">África do Sul</option> <option value="171">Espanha</option> <option value="176">Sri Lanka </option> <option value="177">São Cristóvão e Névis</option> <option value="178">Santa Lúcia</option> <option value="179">São Vicente e Granadinas</option> <option value="175">Sudão</option> <option value="180">Suriname </option> <option value="173">Suazilândia</option> <option value="181">Suécia</option> <option value="174">Suíça</option> <option value="182">Síria</option> <option value="212">Ilha Formosa</option> <option value="184">Tajiquistão</option> <option value="185">Tanzânia</option> <option value="186">Tailândia</option> <option value="187">Togo</option> <option value="188">Tonga</option> <option value="193">Trinidad e Tobago</option> <option value="189">Tunísia</option> <option value="190">Turquia</option> <option value="191">Turquemenistão</option> <option value="192">Ilhas Turcas e Caicos</option> <option value="194">Uganda</option> <option value="195">Ucrânia</option> <option value="196">Emirados Árabes Unidos</option> <option value="197">Reino Unido</option> <option value="199">Uruguai</option> <option value="200">Ilhas Virgens Americanas</option> <option value="201">Uzbequistão</option> <option value="202">Vanuatu</option> <option value="203">Venezuela</option> <option value="204">Vietname</option> <option value="206">Samoa</option> <option value="208">Iêmen</option> <option value="207">Zâmbia</option> <option value="210">Zimbabue</option> </select> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl02_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl02_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankCountry11_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankName12_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o nome do seu banco." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome do seu banco." min="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o nome do seu banco." max="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o nome do seu banco." fnm="Nome do Banco" class="valdnPnl"> <div class="lbl">Nome do Banco</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl05_ctrl" class=" ctrlPnl ddl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankName12"> <select name="ctl00$Main$withdrawal$ctl00$cWd$BankName12" onchange="javascript:setTimeout('__doPostBack(\'ctl00$Main$withdrawal$ctl00$cWd$BankName12\',\'\')', 0)" id="ctl00_Main_withdrawal_ctl00_cWd_BankName12" tabindex="2" validate="req||" group="Bank" style="width:100%" evt=""> <option selected="selected" value="-1">Por favor selecione</option> <option value="ABC-BRASIL">ABC-BRASIL</option> <option value="ABN AMRO">ABN AMRO</option> <option value="ALFA">ALFA</option> <option value="BANCO BRADESCO">BANCO BRADESCO</option> <option value="BANCO COOPERATIVO - SICOOB">BANCO COOPERATIVO - SICOOB</option> <option value="BANCO DO BRASIL">BANCO DO BRASIL</option> <option value="BANCO DO NORDESTE DO BRASIL">BANCO DO NORDESTE DO BRASIL</option> <option value="BANCO INTERMEDIUM">BANCO INTERMEDIUM</option> <option value="BANCO ITAU">BANCO ITAU</option> <option value="BANCO ORIGINAL - AGRONEGOCIO">BANCO ORIGINAL - AGRONEGOCIO</option> <option value="BANCO ORIGINAL SA">BANCO ORIGINAL SA</option> <option value="BANCO SANTANDER">BANCO SANTANDER</option> <option value="BANESE - BANCO DO ESTADO DE SERGIPE SA">BANESE - BANCO DO ESTADO DE SERGIPE SA</option> <option value="BANESTES - BANCO DO ESTADO DO ESPIRITO SANTO">BANESTES - BANCO DO ESTADO DO ESPIRITO SANTO</option> <option value="BANPARA - BANCO DO ESTADO DO PARA">BANPARA - BANCO DO ESTADO DO PARA</option> <option value="BANRISUL">BANRISUL</option> <option value="BANSICREDI">BANSICREDI</option> <option value="BASA BANCO DA AMAZONIA">BASA BANCO DA AMAZONIA</option> <option value="BBM">BBM</option> <option value="BIC">BIC</option> <option value="BMG">BMG</option> <option value="BNB">BNB</option> <option value="BNP PARIBAS">BNP PARIBAS</option> <option value="BRB - BANCO DE BRASILIA">BRB - BANCO DE BRASILIA</option> <option value="CAIXA ECONOMICA FEDERAL">CAIXA ECONOMICA FEDERAL</option> <option value="CITIBANK BRASIL">CITIBANK BRASIL</option> <option value="CREDIT SUISSE BRAZIL">CREDIT SUISSE BRAZIL</option> <option value="DAYCOVAL">DAYCOVAL</option> <option value="DEUTSCHE BANK - BANCO ALEMAO">DEUTSCHE BANK - BANCO ALEMAO</option> <option value="FIBRA">FIBRA</option> <option value="HSBC BRAZIL">HSBC BRAZIL</option> <option value="ING BRAZIL">ING BRAZIL</option> <option value="JP MORGAN CHASE">JP MORGAN CHASE</option> <option value="MERCANTIL DO BRASIL">MERCANTIL DO BRASIL</option> <option value="RABOBANK BRAZIL">RABOBANK BRAZIL</option> <option value="SAFRA">SAFRA</option> <option value="SOCIETE GENERALE">SOCIETE GENERALE</option> <option value="SOFISA">SOFISA</option> <option value="UBS PACTUAL">UBS PACTUAL</option> <option value="UNIBANCO">UNIBANCO</option> <option value="VOTORANTIM - BV FINANCEIRA BRAZIL">VOTORANTIM - BV FINANCEIRA BRAZIL</option> </select> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl05_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl05_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankName12_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankCode13_msg" pmt="Por favor introduza o seu código bancário." cnt="<span>Campo inválido</span><br /> Por favor introduza o seu código bancário." req="<span>O campo deve ser completado</span><br /> Por favor introduza o seu código bancário." min="<span>Campo inválido</span><br /> Por favor introduza o código da sua sucursal bancária." max="<span>Campo inválido</span><br /> Por favor introduza o código da sua sucursal bancária." fnm="Código do Banco" class="valdnPnl"> <div class="lbl">Código do Banco</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl08_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankCode13"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BankCode28_13" type="text" maxlength="3" readonly="readonly" id="ctl00_Main_withdrawal_ctl00_cWd_BankCode28_13" tabindex="3" class="tbx" autocomplete="off" min="1" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="^[0-9]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="3" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl08_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl08_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankCode13_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch14_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o nome e endereço do seu banco." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome e endereço do seu banco." fnm="Endereço Físico da Agência" class="valdnPnl"> <div class="lbl">Endereço Físico da Agência</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl11_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankBranch14"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BankBranch28_14" type="text" maxlength="35" id="ctl00_Main_withdrawal_ctl00_cWd_BankBranch28_14" tabindex="4" class="tbx" autocomplete="off" min="1" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="req||^[0-9\ \u00B4\u0041-\u005A\u005F\u0061-\u007A\u00C0-\u0233\u0250-\u02AD\u1E00-\u1EF9\uFB00-\uFB06\uFF20-\uFF2A\uFF41-\uFF4A\u002D\u002E]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="35" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl11_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl11_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch14_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch15_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o nome e endereço do seu banco." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome e endereço do seu banco." fnm="Endereço Físico da Agência" class="valdnPnl"> <div class="lbl"></div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl14_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankBranch15"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BankBranch28_15" type="text" maxlength="24" id="ctl00_Main_withdrawal_ctl00_cWd_BankBranch28_15" tabindex="5" class="tbx" autocomplete="off" min="0" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="^[0-9\ \u00B4\u0041-\u005A\u005F\u0061-\u007A\u00C0-\u0233\u0250-\u02AD\u1E00-\u1EF9\uFB00-\uFB06\uFF20-\uFF2A\uFF41-\uFF4A\u002D\u002E]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="24" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl14_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl14_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch15_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch16_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o nome e endereço do seu banco." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome e endereço do seu banco." fnm="Endereço Físico da Agência" class="valdnPnl"> <div class="lbl"></div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl17_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankBranch16"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BankBranch28_16" type="text" maxlength="24" id="ctl00_Main_withdrawal_ctl00_cWd_BankBranch28_16" tabindex="6" class="tbx" autocomplete="off" min="0" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="^[0-9\ \u00B4\u0041-\u005A\u005F\u0061-\u007A\u00C0-\u0233\u0250-\u02AD\u1E00-\u1EF9\uFB00-\uFB06\uFF20-\uFF2A\uFF41-\uFF4A\u002D\u002E]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="24" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl17_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl17_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch16_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch17_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o nome e endereço do seu banco." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome e endereço do seu banco." fnm="Endereço Físico da Agência" class="valdnPnl"> <div class="lbl"></div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl20_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBankBranch17"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BankBranch28_17" type="text" maxlength="14" id="ctl00_Main_withdrawal_ctl00_cWd_BankBranch28_17" tabindex="7" class="tbx" autocomplete="off" min="0" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="^[0-9\ \u00B4\u0041-\u005A\u005F\u0061-\u007A\u00C0-\u0233\u0250-\u02AD\u1E00-\u1EF9\uFB00-\uFB06\uFF20-\uFF2A\uFF41-\uFF4A\u002D\u002E]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="14" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl20_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl20_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBankBranch17_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBCN18_msg" pmt="<b>Levantamentos devem ser devolvidos ao titular de conta bet365 especificado.</b><br/>Por favor assegure-se que o seu nome aparece aqui tal como se encontra registado no seu banco." cnt="<span>Campo inválido</span><br/>Por favor introduza o nome do titular da conta tal como aparece na conta." cnt1="<span>The field is not valid</span><br/>Withdrawals must be returned to the named bet365 account holder.<br/>Please ensure that your name appears here as registered with your bank." req="<span>O campo deve ser completado</span><br/>Por favor introduza o nome do titular da conta tal como aparece na sua conta bancária." min="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o nome do titular da conta tal como aparece na sua conta bancária." max="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o nome do titular da conta tal como aparece na conta." fnm="Nome do Titular da Conta" class="valdnPnl"> <div class="lbl">Nome do Titular da Conta</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl23_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBCN18"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BCN28_18" type="text" value="Sebastiao Sergio" maxlength="30" id="ctl00_Main_withdrawal_ctl00_cWd_BCN28_18" tabindex="8" class="tbx" autocomplete="off" min="1" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="req||^[0-9\ \u00B4\u0041-\u005A\u005F\u0061-\u007A\u00C0-\u0233\u0250-\u02AD\u1E00-\u1EF9\uFB00-\uFB06\uFF20-\uFF2A\uFF41-\uFF4A\u002D\u002E]*$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="30" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl23_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl23_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBCN18_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpAccountNo119_msg" cnt="<span>Campo inválido</span><br/>Por favor introduza o número da conta bancária." req="<span>O campo deve ser completado</span><br/>Por favor introduza o número da conta bancária." min="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o número da conta bancária." max="<span>Introduziu um número incorrecto de caracteres</span><br/>Por favor introduza o número da conta bancária." fnm="Número da Conta" class="valdnPnl"> <div class="lbl">Número da Conta</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl26_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pAccountNo119"> <input name="ctl00$Main$withdrawal$ctl00$cWd$AccountNo128_19" type="text" maxlength="10" id="ctl00_Main_withdrawal_ctl00_cWd_AccountNo128_19" tabindex="9" class="tbx" autocomplete="off" min="5" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="req||^[0-9]+$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="10" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl26_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl26_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpAccountNo119_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBranchCode110_msg" pmt="Por favor introduza o código da sua sucursal bancária." cnt="<span>Campo inválido</span><br />Por favor introduza o código da sua sucursal bancária." req="<span>O campo deve ser completado</span><br />Por favor introduza o código da sua sucursal bancária." min="<span>Campo inválido</span><br /> Por favor introduza o código da sua sucursal bancária." max="<span>Campo inválido</span><br /> Por favor introduza o código da sua sucursal bancária." fnm="Número da sua Agência" class="valdnPnl"> <div class="lbl">Número da sua Agência</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl29_ctrl" class=" ctrlPnl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pBranchCode110"> <input name="ctl00$Main$withdrawal$ctl00$cWd$BranchCode28_110" type="text" maxlength="5" id="ctl00_Main_withdrawal_ctl00_cWd_BranchCode28_110" tabindex="10" class="tbx" autocomplete="off" min="3" onpaste="javascript: return false;" oncontextmenu="javascript: return false;" validate="req||^[0-9]+$" group="Bank" onblur="javascript: return false;" alertid="0" ondrop="javascript: return false;" ondrag="javascript: return false;" max="5" oncopy="javascript: return false;" oncut="javascript: return false;" evt=""> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl29_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl29_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpBranchCode110_dvToolTip"> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpAccountType111_msg" pmt="Por favor introduza o tipo de conta. Ex: conta corrente, conta poupança." cnt="<span>Campo inválido</span><br /> Por favor introduza o tipo de conta. Ex: conta corrente, conta poupança." req="<span>O campo deve ser completado</span><br /> Por favor introduza o tipo de conta. Ex: conta corrente, conta poupança. " fnm="Tipo de Conta" class="valdnPnl"> <div class="lbl">Tipo de Conta</div><div style="display:table;width:100%;"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl32_ctrl" class=" ctrlPnl ddl noIcon" showvalidicon="false" showinvalidicon="false"> <div class="ctrlDiv"> <div id="ctl00_Main_withdrawal_ctl00_cWd_pAccountType111"> <select name="ctl00$Main$withdrawal$ctl00$cWd$AccountType111" id="ctl00_Main_withdrawal_ctl00_cWd_AccountType111" tabindex="11" validate="req||" group="Bank" style="width:100%" evt=""> <option selected="selected" value="-1">Por favor selecione</option> <option value="4">Conta Poupança</option> <option value="5">Conta Corrente</option> <option value="6">Conta Corrente Conjunta</option> <option value="7">Conta Poupança Conjunta</option> </select> </div> </div><div class="valIcon" id="ctl00_Main_withdrawal_ctl00_cWd_ctl32_dvValIcon"> <div id="ctl00_Main_withdrawal_ctl00_cWd_ctl32_imgValIcon" class="hidden"> </div> </div> </div> </div><div id="ctl00_Main_withdrawal_ctl00_cWd_vpAccountType111_dvToolTip"> </div> </div> </div> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hFocus" id="ctl00_Main_withdrawal_ctl00_cWd_hFocus" value="ctl00_Main_withdrawal_ctl00_cWd_BankBranch28_14" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hValid" id="ctl00_Main_withdrawal_ctl00_cWd_hValid" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hPCID" id="ctl00_Main_withdrawal_ctl00_cWd_hPCID" value="28" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hIbanCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hIbanCtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCtryCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hCtryCtrlID" value="ctl00_Main_withdrawal_ctl00_cWd_BankCountry" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hBankCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hBankCtrlID" value="ctl00_Main_withdrawal_ctl00_cWd_BankName12" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hSWIFTCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hSWIFTCtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hAcctTypeCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hAcctTypeCtrlID" value="ctl00_Main_withdrawal_ctl00_cWd_AccountType111" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hBWWCharge" id="ctl00_Main_withdrawal_ctl00_cWd_hBWWCharge" value="0.00" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCustNameCtlId" id="ctl00_Main_withdrawal_ctl00_cWd_hCustNameCtlId" value="ctl00_Main_withdrawal_ctl00_cWd_BCN28_18" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCustName" id="ctl00_Main_withdrawal_ctl00_cWd_hCustName" value="Sebastiao Sergio" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCPFCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hCPFCtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCICtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hCICtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hDNICtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hDNICtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hDNI" id="ctl00_Main_withdrawal_ctl00_cWd_hDNI" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCUILCUIT" id="ctl00_Main_withdrawal_ctl00_cWd_hCUILCUIT" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCUILCUITCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hCUILCUITCtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hCPF" id="ctl00_Main_withdrawal_ctl00_cWd_hCPF" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hDocumentCtrlID" id="ctl00_Main_withdrawal_ctl00_cWd_hDocumentCtrlID" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hDocumentRegex" id="ctl00_Main_withdrawal_ctl00_cWd_hDocumentRegex" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hExcludedDocumentNumbers" id="ctl00_Main_withdrawal_ctl00_cWd_hExcludedDocumentNumbers" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hBankWireProviderError" id="ctl00_Main_withdrawal_ctl00_cWd_hBankWireProviderError" value="0" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hBankWireProviderErrorTitle" id="ctl00_Main_withdrawal_ctl00_cWd_hBankWireProviderErrorTitle" value="Este campo não é válido" evt=""> <input type="hidden" name="ctl00$Main$withdrawal$ctl00$cWd$hBankWireProviderErrorBody" id="ctl00_Main_withdrawal_ctl00_cWd_hBankWireProviderErrorBody" value="Não nos é possível processar saques para esta conta bancária. Por favor, forneça dados alternativos ou contate-nos para podermos ajudar." evt=""> </div>
  8. Bom dia! Eu tenho um código javascript que chama um arquivo PHP para envio de e-mails. Minha dúvida é a seguinte, como fazer com que a função "$j("#retorno").fadeIn("slow").html(resposta);" seja executada antes do termino da execução do arquivo nscript/enviar2.php. Pois ocorre que eu quero encontrar o erro dentro do arquivo enviar2.php, mas se ocorre algum erro na execução deste arquivo a função "$j("#retorno").fadeIn("slow").html(resposta);" (que mostra o resultado da pagina enviar2.php na div) não é executada pois o arquivo enviar2.php não terminou de carregar. Creio que teria de haver um jeito do conteudo da função "function(resposta)" ser executado antes dela ser completamente finalizada, mas estou sem ideia de como fazer. Muito obrigado pela atenção e ajuda. Segue o código: $j.post("nscript/enviar2.php",{anexo: anexo, destinatarios: destinatarios, assunto: assunto, mensagem: mensagem}, function(resposta){ complete:$j("#carregando").fadeOut("slow"); $j("#retorno").fadeIn("slow").html(resposta); });
  9. ThalissonChagas1407

    Verificar total de abas abertas pro mesmo dominio

    Bom dia a todos! Existe alguma maneira de verificar quantas abas abertas no navegador para o mesmo domínio?
  10. Boa tarde pessoal, Sou iniciante em Desenvolvimento Web e não estou conseguindo resolver um problema no meu código, se alguém puder me ajudar agradeço imensamente. Vamos lá! Na tela de cadastro eu tenho um campo tipo select, onde escolho o tipo de documento, e no campo de baixo eu tenho um tipo text que mostrará a quantidade de anos para descarte deste documento. Então quando o usuário selecionar um dos documentos no campo de cima automaticamente deve aparecer o valor do tempo de descarte no campo de baixo, e ai sim o usuário poderá cadastrar o documento em si. Obs.: estou ignorando o restante dos campos de cadastro pois não são relevantes para este problema. Este evento está funcionando perfeitamente, o problema é que quando clico no botão "cadastrar" o campo de "periodicidade de descarte" não está salvando no bando de dados com o valor exibido, mas sim como zero. No arquivo processa_cadastro.php quando dou um var_dump em $periodo_doc ele imprime: int(0) Não consegui identificar onde estou errando. Por favor, poderiam me dar uma luz. Obrigada! Segue os códigos para entendimento. tipo_arquivo.sql: -- phpMyAdmin SQL Dump -- version 5.2.0 -- https://www.phpmyadmin.net/ -- -- Host: localhost -- Tempo de geração: 12-Jul-2022 às 14:46 -- Versão do servidor: 10.4.24-MariaDB -- versão do PHP: 7.4.29 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Banco de dados: `sistemadescarte` -- -- -------------------------------------------------------- -- -- Estrutura da tabela `tipo_arquivo` -- CREATE TABLE `tipo_arquivo` ( `id_tipo` int(11) NOT NULL, `nome_tipo` varchar(255) NOT NULL, `descarte` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Extraindo dados da tabela `tipo_arquivo` -- INSERT INTO `tipo_arquivo` (`id_tipo`, `nome_tipo`, `descarte`) VALUES (1, 'Ata Extraordinária', 5), (2, 'Ata Ordinária', 5), (3, 'carta', 8), (4, 'Memorando', 10), (5, 'Memorando Circular', 8), (6, 'Ofício', 5), (7, 'Ofício Circular', 5), (8, 'Processo', 10); -- -- Índices para tabelas despejadas -- -- -- Índices para tabela `tipo_arquivo` -- ALTER TABLE `tipo_arquivo` ADD PRIMARY KEY (`id_tipo`), ADD KEY `id_tipo` (`id_tipo`); -- -- AUTO_INCREMENT de tabelas despejadas -- -- -- AUTO_INCREMENT de tabela `tipo_arquivo` -- ALTER TABLE `tipo_arquivo` MODIFY `id_tipo` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=21; COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; documento.sql: -- phpMyAdmin SQL Dump -- version 5.2.0 -- https://www.phpmyadmin.net/ -- -- Host: localhost -- Tempo de geração: 12-Jul-2022 às 14:47 -- Versão do servidor: 10.4.24-MariaDB -- versão do PHP: 7.4.29 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Banco de dados: `sistemadescarte` -- -- -------------------------------------------------------- -- -- Estrutura da tabela `documento` -- CREATE TABLE `documento` ( `ID_DOC` int(11) NOT NULL, `NUMERO_DOC` varchar(20) NOT NULL, `TIPO_DOC` int(11) NOT NULL, `INTERESSADO` varchar(255) NOT NULL, `TITULO` varchar(400) NOT NULL, `OBS` varchar(400) DEFAULT NULL, `PERIODICIDADE` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Extraindo dados da tabela `documento` -- INSERT INTO `documento` (`ID_DOC`, `NUMERO_DOC`, `TIPO_DOC`, `INTERESSADO`, `TITULO`, `OBS`, `PERIODICIDADE`) VALUES (2, '788741-2019/65', 1, 'admin', 'Ata extraordinária de 2018', 0), (3, '888888-2021/21', 3, 'gerencia', 'Carta a gerencia', 0), (4, '333653-2022/1', 8, 'teste', 'Processo', 'teste na observação', 0), (6, '224568-2022/3', 2, 'teste', 'Ata Ordinária', 0); -- -- Índices para tabelas despejadas -- -- -- Índices para tabela `documento` -- ALTER TABLE `documento` ADD PRIMARY KEY (`ID_DOC`), ADD KEY `TIPO_DOC` (`TIPO_DOC`); -- -- AUTO_INCREMENT de tabelas despejadas -- -- -- AUTO_INCREMENT de tabela `documento` -- ALTER TABLE `documento` MODIFY `ID_DOC` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2295; -- -- Restrições para despejos de tabelas -- -- -- Limitadores para a tabela `documento` -- ALTER TABLE `documento` ADD CONSTRAINT `documento_ibfk_1` FOREIGN KEY (`TIPO_DOC`) REFERENCES `tipo_arquivo` (`id_tipo`); COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; cadastro.php: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script type="text/javascript" src="js/descarte.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> <title>Cadastro de Documento</title> </head> <form action="" method="post"> <div class="form-row"> <!-- tipo de documento --> <div class="form-group col-md-1"> <label>Tipo de Documento</label> <select name="tipo" id="tipo" class="form-control" onchange="funcaoDescarte()"> <option selected>Selecione...</option> <!--------------- P H P ----------------> <?php while($row = $result->fetch_assoc()) { echo "<option value=".$row['id_tipo'].">".$row['nome_tipo']."</option>"; } ?> <!--------------- F I M P H P ---------> </select> </div> </div> <div class="form-row"> <!-- tempo para descarte --> <div class="form-group col-md-2"> <span class="form-text">Periodicidade para descarte deste documento:</span> <input name="descarte" type="text" class="form-control" id="descarte" value="" disabled=""> <input type="text" readonly class="form-control-plaintext" value="Anos"> </div> </div> <!------------------- botão cadastrar e limpar ----------------------------------------------> &nbsp; </br> <div class="form-row"> <!-- Cadastrar e Limpar --> <div class="form-group col-md-4"> <button type="submit" name="cadastrar_doc" class="btn btn-primary">Cadastrar</button> <button type="reset" name="limpar_doc" class="btn btn-primary">Limpar campos</button> </div> </div> </form descarte.js: function funcaoDescarte(){ var x = document.getElementById("tipo").value; y = $.ajax({ url:"periodicidade.php", method:"POST", data:{ id : x }, success:function(data){ $("#descarte").val(data); } }) } periodicidade.php: <?php include_once "conexao.php"; $k = $_POST['id']; $k = trim($k); $sql = "SELECT * FROM tipo_doc WHERE id_tipo ='{$k}'"; $result = $conn->query($sql); while($row = $result->fetch_assoc()){ echo $row['descarte']; } ?> processa_cadastro.php: <?php $tipo_doc = intval(filter_input(INPUT_POST, 'tipo', FILTER_SANITIZE_NUMBER_INT)); $periodo_doc = intval(filter_input(INPUT_POST, 'descarte', FILTER_SANITIZE_NUMBER_INT)); if(isset($_POST['cadastrar_doc'])) { if($tipo_doc !='' || $periodo_doc !='') { $stmt = $conn->prepare("INSERT INTO documento (tipo_doc, periodicidade) VALUES (?, ?)"); $stmt->bind_param("ii", $tipo_doc, $periodo_doc); $stmt->execute(); echo "<span class='alert alert-success'> Cadastrado com sucesso</span>"; $erro = mysqli_error($conn); echo "Ocorreu o seguinte erro: ", '"', $erro, '"<br>'; }else{ echo "<span class='alert alert-danger'> Não cadastrado</span>"; $erro = mysqli_error($conn); echo "Ocorreu o seguinte erro: ", '"', $erro, '"<br>'; } } $stmt->close(); $conn->close(); ?>
  11. Ferdz-Agencia-Digital

    Filtrar o que estou trazendo no NavLink

    Estou importando o NavLink do react-router-dom e montando o meu menu assim: <Nav navbar>{createLinks(routes)}</Nav> No arquivo routes.js estou montando enviando conforme código abaixo: var routes = [ { path: "/index", name: "Dashboard", icon: "ni ni-tv-2 text-primary", component: Index, tipo: 1, layout: "/admin", }, { path: "/solicitacoes-trabalho", name: "Solicitações", icon: "ni ni-cart text-orange", tipo: 1, component: Solicitacoes, layout: "/admin", }, { path: "/Clientes", name: "Clientes", icon: "ni ni-single-02 text-orange", tipo: 2, component: Clientes, layout: "/admin", }, ]; export default routes; Há como na exibição eu conseguir filtrar pelo tipo e só mostrar o que for do tipo 1 ?
  12. Estou com um problema. Como faço para montar uma URL quando for clicando nos chebox? Exemplo eu possuio varios checkbox e toda vez que eu marcar um o valor dele é adicionando a uma url e essa mesma url será modificada no link. Algo como: <a href="user/enviar">Mostrar</a> <input type="checkbox" value="1"> <input type="checkbox" value="2" checked> <input type="checkbox" value="3" checked> <input type="checkbox" value="4"> <input type="checkbox" value="5"> Vendo os valores marcados a url ficaria <a href="user/enviar/2,3">Mostrar</a> Eu também queria um checkbox para marcar todos e assim adicionar todos os valores a url, agora caso uma desses checkbox forem desmarcados o valor é retirado da url Eu fiz um script que funciona mas ele está meio bugado, queria saber se alguém tem algum script para fazer isso em javascript puro ou jquery
  13. Jack Oliveira

    Pegar as cordenadas com cep

    Ola pessoal eu gostaria de saber se teria como e se sim, como fazer para pegar lat e lng quando fazer a busca do endereco pelo cep, Tentei buscar uns exemplos de como poderia ser feito, porem não obtive resultado que precisava. o código a baixo ele funciona sem problema, porem so precisaria pegar esta LAT e LNG //Buscando endereco plo CEP function limpa_formulário_cep() { //Limpa valores do formulário de cep. document.getElementById('rua').value=(""); document.getElementById('bairro').value=(""); document.getElementById('cidade').value=(""); document.getElementById('uf').value=(""); } function meu_callback(conteudo) { if (!("erro" in conteudo)) { //Atualiza os campos com os valores. document.getElementById('rua').value=(conteudo.logradouro); document.getElementById('bairro').value=(conteudo.bairro); document.getElementById('cidade').value=(conteudo.localidade); document.getElementById('uf').value=(conteudo.uf); } //end if. else { //CEP não Encontrado. limpa_formulário_cep(); alert("CEP não encontrado."); } } function pesquisacep(valor) { //Nova variável "cep" somente com dígitos. var cep = valor.replace(/\D/g, ''); //Verifica se campo cep possui valor informado. if (cep != "") { //Expressão regular para validar o CEP. var validacep = /^[0-9]{8}$/; //Valida o formato do CEP. if(validacep.test(cep)) { document.getElementById('cep').value = cep.substring(0,5) +"-" +cep.substring(5); //Preenche os campos com "..." enquanto consulta webservice. document.getElementById('rua').value="..."; document.getElementById('bairro').value="..."; document.getElementById('cidade').value="..."; document.getElementById('uf').value="..."; //Cria um elemento javascript. var script = document.createElement('script'); //Sincroniza com o callback. script.src = 'https://viacep.com.br/ws/'+ cep + '/json/?callback=meu_callback'; //Insere script no documento e carrega o conteúdo. document.body.appendChild(script); } //end if. else { //cep é inválido. limpa_formulário_cep(); alert("Formato de CEP inválido."); } } //end if. else { //cep sem valor, limpa formulário. limpa_formulário_cep(); } }; </script> <?php // Map($Width, $Height, $StringNome, $StringEndereco, $StringCidade) $LAT = '37.86926'; $LNG = '-122.254811'; ?> <script> // gmap for street view panorama = GMaps.createPanorama({ el: '#MapCanvasStreet', lat : <?= $LAT; ?>, lng : <?= $LNG; ?>, }); </script> Desde já fico grato!!
  14. Ola pessoal montando um limitador a ser selecionado no SELECT OPTION ele ate faz a contagem certo etc... porem não estou conseguindo fazer esta contagem continuar pois ja esta cadastrado no banco o maximo permetido <div class="col-md-6"> <div class="form-group"> <label>Categorias: </label> <select class="form-control select2" name="categorias[]" id="SelecionaQtdOption" multiple="multiple" data-placeholder="<?php echo $txt['todos_os_mods']; ?>"> <option value="">Selecionar Categorias</option> <?php foreach($categorias as $categoria){ if(strpos($Dados['categorias'], $categoria['titulo']) !== false){ ?> <option selected value="<?= $categoria['titulo']; ?>"><?= $categoria['titulo']; ?></option> <?php } else { ?> <option value="<?= $categoria['titulo']; ?>"><?= $categoria['titulo']; ?></option> <?php } } ?> </select> </div> </div> java esta desta forma <?php $QtdCategoria = 3; ?> <script type="text/javascript"> $(document).ready(function() { var selecionarOpiton = null; $('#SelecionaQtdOption').change(function(event) { if ($(this).val().length == <?= $QtdCategoria; ?>) { //Limitar Quantidade de categoria a ser selecionanda no select Option $(this).val(selecionarOpiton); } else { selecionarOpiton = $(this).val(); } }); }); </script>
  15. gersonab

    Aplicar mascara em janela modal

    Bom dia a todos, preciso aplicar duas máscaras em uma janela modal, não estou conseguindo fazer, fora dela as mascaras funcionam. <div class="form-group col-md-4"> <label>Data pagamento</label> <input type="text" name="dataval" class="form-control" id="dataapp"> </div> <div class="form-group col-md-4"> <label>Valor</label> <input type="text" name="valpro" class="form-control" id="money"> </div> utilizo este plugin <script src="../plugins/input-mask/jquery.inputmask.bundle.min.js"></script> $("#money").inputmask("999,999,999.999"); $("#dataapp").inputmask("99/99/9999"); desde já agradeço qq ajuda
  16. Ola pessoal boa noite Bom é o seguinte Como eu posso fazer uma contagem de imagens que poderá ser carregado pelo input file Exemplos <!-- img1 carregar apenas 3 imagens --> <input type="file" name="img1"> <!-- img2 carregar apenas 6 imagens --> <input type="file" name="img2"> <!-- img3 carregar apenas 9 imagens --> <input type="file" name="img3"> <!-- img4 carregar apenas 12 imagens --> <input type="file" name="img4"> Ouver um jeito também de bloquear se for selecionado mais do que for permitido... Já vi isso em alguns site quando for selecionar as imagens se passar da quantidade ele não seleciona mais nenhuma imagem. Se img1 ja tiver as 3 imagens nao permite selecionar ou então ocultar o input se a quantidade ja foi cadastrada.. Se o usuário tiver as 3 imagens e se ele apagou uma ele podera selecionar apenas uma e nada mais... Se teria como fazer isso apenas com php ou teria que usar jquery ou javascript.. Espero que possam entender.. Obs: não precisa ser codigo grande pra pouca coisa; que possa ser mais simplificado possível..
  17. Bom dia! Não estou conseguindo receber os dados de um campo textarea e um select. Estou tentando via jquery. Todos os campos input são recebido corretamente. Testei de várias formas e não consegui. Vou colocar os trechos do código. Fico grato caso alguém possa ajudar. Função que uso para enviar os dados para página que fazer o tratamento. // --> Envia dados Formulario Orçamento - Start <-- jQuery(function($){ $('#OrcIndex').submit(function(){ event.preventDefault(); $.post('CadastraOrcIndex.asp', $('#OrcIndex input'), function(retorno){ if(retorno){ //alert(retorno); $("#PrintaOrcIndex").html(retorno); }else{ } }, 'html'); return false; }); }); // --> Envia dados Formulario de Orçamento - End <-- Formulário o que preciso enviar os dados para tratamento. <form method="post" id="OrcIndex" name="OrcIndex"> <input type="hidden" id="latitude" name="Latitude"> <input type="hidden" id="longitude" name="Longitude"> <div class="row g-3"> <div class="col-12 col-sm-6"> <label>Seu nome</label> <input name="NomeOrc" type="text" class="form-control border-0" style="height: 55px;"> </div> <div class="col-12 col-sm-6"> <label>Seu e-mail</label> <input name="EmailOrc" type="email" class="form-control border-0" style="height: 55px;"> </div> <div class="col-12 col-sm-6"> <label>Seu celular</label> <input name="CelularOrc" type="text" class="form-control border-0" style="height: 55px;"> </div> <div class="col-12 col-sm-6"> <label>Escolha o setor</label> <select name="SetorOrc" id="SetorOrc" class="form-select border-0" style="height: 55px;"> <option value="Selecione" selected>Selecione</option> <option value="Energia Solar">Energia Solar</option> <option value="Aquecimento Solar">Aquecimento Solar</option> <option value="Câmeras e Monitoramento">Câmeras e Monitoramento</option> <option value="Automação Residencial">Automação Residencial</option> <option value="Automação Comercial">Automação Comercial</option> <option value="Redes e Informática">Redes e Informática</option> </select> </div> <div class="col-12"> <label>Detalhe sua necessidade </label> <textarea name="DetalheOrc" id="DetalheOrc" class="form-control border-0"></textarea> </div> <div class="col-12"> <button class="btn btn-primary rounded-pill py-3 px-5" type="submit">Solicitar Orçamento</button> </div> </div> </form> <span id="PrintaOrcIndex">&nbsp;</span>
  18. Boa noite! Estou desenvolvendo um formulário como estudo e queria fazer as validações de senha e confirma senha e não estou conseguindo. A ideia é quando as senhas não coincidirem aparecerá uma mensagem dizendo senhas não são iguais. Segue abaixo o escopo do meu código. function validarConfirmaSenha(senha, confirmaSenha) { var senhaDigitada = document.getElementsByName('senha').value; var confirmaSenhaDigitada = document.getElementsByName('confirmaSenha').value; if(senhaDigitada !== confirmaSenhaDigitada) { return { valido: false, texto: 'As senhas não são iguais.' } } else { return { valido: true, texto: '' } } }
  19. ola galera . tenho uma aplicação com asp e utilizo javascript para bater foto do cliente . consigo apos a foto batida salvar no pc com o ID do cliente, porem gostaria que assim que a foto fosse batida salvasse na raiz do proprio site. tem como fazer isso ? obg
  20. marco_fcp

    Somar valores inputs/checkbox

    Estou tentando criar este código para quando escolher uma option no select, ele pegar nesse valor, e somar com quantos checksbox o utilizador quiser. Aí, no fim, no campo do valortotal conforme a option que escolher, irá subtrair um desconto do valor total. Penso ter feito os scripts, mas não estou a conseguir o resultado final com o desconto, dinâmico no mesmo campo. <!-- Pedido de Orçamento --> <div class="container-fluid mb-5"> <div class="row"> <div class="col-lg-2"></div> <div class="col-lg-8 mb-5"> <div class="caixa-orcamento pb-5"> <form action="" method="POST" onchange="atualizarPreco()" name="formulario"> <h3 class="text-center pt-5 pb-4 labels">Pedido de Orçamento:</h3> <table class="m-auto"> <tr> <td class="fw-bold labels">Tipo de página web:</td> <td> <!-- Três tipos de pãgina Fictícia com os valores de 400, 500 e 600 respetivamente --> <select name="tipopagina" id="tipopagina" required> <option value="0"></option> <option value="400" id="estatica">Estática</option> <option value="500" id="dinamica" >Dinâmica</option> <option value="600" id="loja" >Loja</option> </select> </td> </tr> <tr> <!-- Descontos de Prazo - de 1 Mes- 5%, 2 Meses-10%, 3 Meses- 15$, 4 Meses- 20%, em diante sempre 20% --> <td class="fw-bold labels">Prazo em meses:</td> <td><input type="number" id="prazo"></td> </tr> </table> <h5 class="text-center pt-5 pb-4 labels">Marque os separadores desejados</h5> <!-- Cada check selecionado soma 400 ao valor total --> <div class="checkbox labels text-center mb-5"> <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Quem Somos <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Onde estamos <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Galeria de fotografias <br> <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">eCommerce <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Gestão Interna <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Notícias <input type="checkbox" class="checkbox" id="check" name="separadores" value="400" onchange="somar(this)">Redes Sociais </div> <h5 class="text-center labels">Orçamento estimado:</h5> <p class="text-center labels">(É um valor meramente indicativo, pode sofrer alterações)</p> <div class="resultado-orcamento text-center"> <!-- Valor total do orçamento com os botões de resetar e submeter o orçamento --> <input type="text" id="valor-orcamento" name="valor-orcamento" value=""> <br> <button type="reset" class="btn btn-primary mt-4" id="reset" name="reset">Apagar Orçamento</button> <button type="submit" class="btn btn-primary mt-4" id="submeter" name="submeter">Submeter Orçamento</button> </div> </form> </div> </div> <div class="col-lg-2"></div> </div> </div> function atualizarPreco() { var preco = 0; // Tipo de página Selecionada com preços Diferentes if (document.getElementById('tipopagina').value == '400') { preco = 400; } if (document.getElementById('tipopagina').value == '500') { preco = 500; } if (document.getElementById('tipopagina').value == '600') { preco = 600; } // Desconto de 5% por cada mês de prazo (sobre valor total do orçamento) (máximo 20% de desconto que equivale a 4 meses máximo. A partir daí é sempre 20%) var prazo = document.getElementById('prazo').value; if (prazo == 0) { preco = preco + 0; } else if (prazo == 1) { preco = preco - (preco * 0.05); } else if (prazo == 2) { preco = preco - (preco * 0.10); } else if (prazo == 3) { preco = preco - (preco * 0.15); } else { preco = preco - (preco * 0.20); } document.getElementById('valor-orcamento').value = preco; // Código que soma 400€ ao total por cada checkbox selecionado var soma1 = 0; function somar(check) { if ( check.checked ){ soma1 += 1*check.value; } else { soma1 -= 1*check.value; } document.getElementById("valor-orcamento").value = soma1; } }
  21. nathanmoreira

    Como formatar uma string

    Após diversos cálculos provindos de um código, recebo um número inteiro ao qual não sei o tamanho ao certo (pode variar de 1 pra frente). Quero passar esse número para string e formatar ele de maneira a colocar um ,00 no final e, a cada 3 números antes da virgula, um ponto. Ou seja, deixar o número num formato como: 45.114.477,00 Como fazer?
  22. luiz monteiro

    Problemas com VUE JS

    Olá, tudo bem? Estou tentando colocar um evento dropdown em um template.js mas sem sucesso. O script é o seguinte const template = ` <nav id="sidebar"> <ul class="list-unstyled menu"> <li> <a href="#"> <span class="glyphicon glyphicon-home" aria-hidden="true"></span> Home </a> </li> <li> <a href="#"> <span class="glyphicon glyphicon-signal" aria-hidden="true"></span> Analytics </a> </li> <li> <a href="#"> <span class="glyphicon glyphicon-tasks" aria-hidden="true"></span> Ações </a> </li> <li> <a href="#"> <span class="glyphicon glyphicon-cog" aria-hidden="true"></span> Controles </a> </li> <li> <a href="#"> <span class="glyphicon glyphicon-user" aria-hidden="true"></span> Configurações </a> </li> </ul> </nav> ` export default { name: "Sidebar", template, delimiters: ["#{", "}#"] } ============Preciso colocar um dropdown na opção Ações, algo assim <li v-for="item in items"> <a :href="item.url" v-if="!item.children"> </a> <span v-else v-on:mouseover="mouseover" v-on:mouseleave="mouseleave"> {{ item.name }} <ul class=" dropdown" :class="{ isOpen }"> <li v-for="child in item.children"> <a :href="child.url"> {{ child.name }} </a> </li> </ul> </span> </li> var nav = new Vue({ el: '#nav', data: { isOpen: false, items: [ { url: '#acoes', name: 'Ações', children: [ { url: '#link1', name: 'Opção 1' }, { url: '#link2', name: 'Opção 2' }, { url: '#link3', name: 'Opção 3' }, ] } ] }, methods: { mouseover: function () { this.isOpen = true; }, mouseleave: function () { this.isOpen = false; } } }); Quando coloco a programação no sidebar.js, não é exibido nada na tela nem mesmo retorna erro. =============No index os imports estão assim <script type="importmap"> { "imports": { "vue": "https://unpkg.com/vue@3/dist/vue.esm-browser.js" } } </script> <script type="module"> import { createApp } from "vue"; import Sidebar from "/components/sidebar.js"; import Welcome from "/components/welcome.js"; const app = createApp({ delimiters: ["#{", "}#"], components: { Welcome, Sidebar }, data() { return {} }, methods: { } }).mount("#wrapper"); </script> </body> Agradeço desde já.
  23. Boa noite, Galera, utilizo uma aplicação que me permite inserir arquivos JavaScript customizados em algumas páginas, e por vezes quando realizo alguma alteração considerável no JS, preciso solicitar aos usuários da ferramenta para limparem o cache, evitando que eles fiquem com as regras antigas do JS e gere algum erro. Existe alguma forma de esporadicamente quando eu realizar alterações no JS, forçar a limpeza de cache nas máquinas clientes? Ou então de não permitir que o navegador salve cache deste JS que eu customizo as regras?
  24. anderson324

    Quais exercícios para iniciante

    Olá acabei de entrar no universo da programação e aprendi apenas como criar textos no arquivos e quero praticar mais quais códigos devo fazer para praticar.
  25. Sapinn

    Carrinho de compras

    Opa galera tudo beleza? Estou desenvolvendo um pequeno e-commerce de camisas. Enquanto fazia o carrinho de compras topei com um problema como posso mostrar os produtos no carrinho e como mostrar assim que for inserirdo um novo produto ? Fiz algumas buscas mas nenhuma me ajudou realmente. Carrinho de compras: <!-- ==================================== CARRINHO DE COMPRAS =================================== --> <div class="offcanvas offcanvas-end areaShoppingCart" tabindex="-1" id="offcanvasNavbar" aria-labelledby="offcanvasNavbarLabel"> <div class="offcanvas-header"> <h4 class="offcanvas-title fw-bold" id="offcanvasNavbarLabel"><i class="bi bi-cart4"></i> Carrinho de Compras </h4> <button type="button" class="text-reset closeAreaShoppingCart" data-bs-dismiss="offcanvas" aria-label="Close"><i class="bi bi-x"></i></button> </div> <span data-bs-toggle="modal" data-bs-target="#leiaimportante" class="link_text">Leia Importante <i class="bi bi-info-circle"></i></span> <hr /> <div class="offcanvas-body cart_body"> <!-- <div class="product_content"> <div class="trash_icon"><a href="#" class="link_text"><i class='bx bx-trash ' title="Excluir do carrinho"></i></a></div> <a href="" class="container_card_product"> <div class="d-flex"> <div class="cart_img_product"> <img src="../assets/images/camisas/257139328_126851229744515_2923407250030929456_n.webp.jpg" alt=""> </div> <div class="cart_info_product"> <div class="cart_name_product">Camisa do Paris San-German Branca</div> <div class="cart_price_product">Preço: 120,00</div> </div> </div> </a> <hr /> </div> --> </div> </div> JS: let cartShirt = []; let btn = document.querySelector(".btnShoppingCart"); let idShirt = btn.getAttribute('data-product-id') let nameShirt = document.querySelector(".name_shirt").innerText; let priceShirt = document.querySelector(".price_shirt").innerText; let symbol_shirt = document.querySelector(".symbol_shirt").getAttribute('src'); let urlShirt = window.location.href; let infoShirts = { "id": idShirt, "name": nameShirt, "price": priceShirt, "img": symbol_shirt, "url": urlShirt, } jsonShirt = JSON.stringify(infoShirts); let productsInCart = JSON.stringify(localStorage.getItem("futprime_cart")); btn.addEventListener('click', () => { if (productsInCart == '') { cartShirt.push(jsonShirt); localStorage.setItem('futprime_cart', cartShirt) }else{ let obj = productsInCart.concat(jsonShirt); cartShirt.push(obj.replace(/[\\"]/g, '')) /* console.log(cartShirt); */ localStorage.setItem('futprime_cart', cartShirt); /* console.log(localStorage.getItem('futprime_cart')); */ } insertInCartHTML(); }); console.log(localStorage.getItem('futprime_cart')); /* localStorage.clear(); */ function insertInCartHTML(){ }
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.