Last active
June 2, 2025 23:51
-
-
Save uchoamaster/ac206461eea2b60d0741d5bd8f6f974f to your computer and use it in GitHub Desktop.
index.html da agenda de contatos com JS puro
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE html> | |
| <html lang="pt-BR"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Agenda de Contatos</title> | |
| <!-- Bootstrap CSS --> | |
| <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"> | |
| <!-- Estilos personalizados --> | |
| <link rel="stylesheet" href="style.css"> | |
| </head> | |
| <body> | |
| <div class="container mt-5"> | |
| <h1 class="text-center mb-4">Agenda de Contatos</h1> | |
| <!-- Botão para abrir o modal de inserção --> | |
| <button type="button" class="btn btn-primary mb-3" data-bs-toggle="modal" data-bs-target="#contactModal"> | |
| Adicionar Contato | |
| </button> | |
| <!-- Tabela de contatos --> | |
| <table class="table table-striped"> | |
| <thead> | |
| <tr> | |
| <th>Nome</th> | |
| <th>Telefone</th> | |
| <th>Email</th> | |
| <th>Ações</th> | |
| </tr> | |
| </thead> | |
| <tbody id="contactsTableBody"> | |
| <!-- Os contatos serão renderizados aqui dinamicamente --> | |
| </tbody> | |
| </table> | |
| </div> | |
| <!-- Modal para adicionar/editar contatos --> | |
| <div class="modal fade" id="contactModal" tabindex="-1" aria-labelledby="contactModalLabel" aria-hidden="true"> | |
| <div class="modal-dialog"> | |
| <div class="modal-content"> | |
| <div class="modal-header"> | |
| <h5 class="modal-title" id="contactModalLabel">Adicionar Contato</h5> | |
| <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> | |
| </div> | |
| <div class="modal-body"> | |
| <form id="contactForm"> | |
| <input type="hidden" id="contactId"> | |
| <div class="mb-3"> | |
| <label for="name" class="form-label">Nome</label> | |
| <input type="text" class="form-control" id="name" required> | |
| </div> | |
| <div class="mb-3"> | |
| <label for="phone" class="form-label">Telefone</label> | |
| <input type="text" class="form-control" id="phone" required> | |
| </div> | |
| <div class="mb-3"> | |
| <label for="email" class="form-label">Email</label> | |
| <input type="email" class="form-control" id="email" required> | |
| </div> | |
| </form> | |
| </div> | |
| <div class="modal-footer"> | |
| <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancelar</button> | |
| <button type="button" class="btn btn-primary" id="saveContact">Salvar</button> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Bootstrap JS e Popper.js --> | |
| <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js"></script> | |
| <!-- Script personalizado --> | |
| <script src="script.js"></script> | |
| </body> | |
| </html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment