Executando verificação de segurança...
1

Criação de Elementos no Javascript. ME AJUDEM !!!

Qual a melhor forma de criar elementos no Javascript ?

Um código assim:

let btnCriaClassi = document.getElementById('criaClassi')
let divHoldClassifi = document.getElementById('divHoldClassifi')
let divHoldVari = document.getElementById('divHoldVari')
let criaVari = document.getElementById('criaVari')

function criarDiv(){
    let cardsClassificacoes = document.createElement('div')
    cardsClassificacoes.classList.add('cardsClassificacoes')
    return cardsClassificacoes;
}
function criarInput(){
    let inputsClassi = document.createElement('input');
    inputsClassi.classList.add('inputs');
    inputsClassi.type = 'text';

    let inputsClassi = document.createElement('input')
    inputsClassi.classList.add('inputs')
    inputsClassi.type = 'text'
    inputsClassi.name = ''

    return inputsClassi;
}
function criarBotaoCancelar(){
    let btnsCancel = document.createElement('button');
    btnsCancel.classList.add('btnsCancel');
    btnsCancel.innerText = 'Cancelar';   

    return btnsCancel;
}
function criarBotaoConfirmar(){
    let btnsConfirm = document.createElement('button');
    btnsConfirm.classList.add('btnsConfirm');
    btnsConfirm.innerText = 'Cancelar';
    return btnsConfirm;
}
function criaClassificacao() {
    let cardsClassificacoes = criarDiv(),
        inputsClassi = criarInput(),
        btnsCancel = criarBotaoCancelar(), 
        btnsConfirm = criarBotaoConfirmar();
    cardsClassificacoes.append(inputsClassi, btnsCancel, btnsConfirm);
    return cardsClassificacoes;        
}

btnCriaClassi.addEventListener('click', () => {
    criaClassificacao()
})

Ou um código assim:

let btnCriaClassi = document.getElementById('criaClassi')
let divHoldClassifi = document.getElementById('divHoldClassifi')
let divHoldVari = document.getElementById('divHoldVari')

function criaClassificacao() {
    let cardsClassificacoes = document.createElement('div')
    cardsClassificacoes.classList.add('cardsClassificacoes')

    let inputsClassi = document.createElement('input')
    inputsClassi.classList.add('inputs')
    inputsClassi.type = 'text'
    //inputsClassi.name = ''

    let btnsCancel = document.createElement('button')
    btnsCancel.classList.add('btnsCancel')
    btnsCancel.innerText = 'Cancelar'

    let btnsConfirm = document.createElement('button')
    btnsConfirm.classList.add('btnsConfirm')
    btnsConfirm.innerText = 'Cancelar'
    cardsClassificacoes.append(inputsClassi, btnsCancel, btnsConfirm)
    divHoldClassifi.appendChild(cardsClassificacoes)
}

btnCriaClassi.addEventListener('click', () => {
    criaClassificacao()
})

Quem puder me ajudar, agradeço.

Carregando publicação patrocinada...
1

Olá a resposta depende do seus objetivo, mas uma forma mais seprada das coisas como no primeiro caso poderá ser mais mais simples de manter, pois poderá haver um requisito apenas nos botões assim isso oderá ser levado para outro arquivo ou expandido de outras formas.

0
1

Eu odeio digitar para explicar coisas assim rsrs, um bate papo é muito mais facil e produtivo na minha opinião. Mas deixa eu tentar.

Primeiro tenho que fazer perguntas para entender melhor o contexto. Porque diabos tu tem que fazer em javascript.

Continuando, o recomendado é sempre criar função que faça apenas uma coisa, isso porque caso tu precise reaproveitar algo, estará tudo bem separado.

O primeiro código eu vejo melhor, pois caso eu precise em alguma outra parte do sistema criar um botão CANCELAR, basta eu chamar a função criarBotaoCancelar

Agora tome cuidado se precisa de fato dessa complexidade para criar um elemento html, porque tu não pode renderizar isso no HTML direto ao invés de montar no javascript.

OBSERVAÇÃO: O TEXTO DO BOTÃO CONFIRMAR ESTÁ ERRADO.

0