Ajuda com Javascript - recuperar valores gerados por loops

05/11/2018

0

Olá muito bom dia a todos, sou principiante com javascript se meu código estiver errado me corrijam por favor. Minha dúvida é o seguinte estou fazendo um sistema web que a pessoa escolhe através de um combobox a quantidade de campos que ela ira gerar, cujo campos são para a inserção de textos até aqui consegui fazer funcionar normalmente (não sei se fiz da forma correta, porém esta funcionando) minha dúvida é saber como posso pegar os textos que foram inseridos em cada textbox, sendo que os campos foram gerados por meio de um loop (for). Segue o código (javascript):

function gerar()

{
	var qntMaquinas = document.getElementById("qntdm").options[document.getElementById("qntdm").selectedIndex].text;
	var nodeElement = document.getElementById(''gerarM'');

	for (var i = 0; i < qntMaquinas-1; i++) {
	     
		var clone = nodeElement.cloneNode(true); 
		var campo =  document.body.appendChild(clone)[i];
	}

                        
}

function limpar()

{
	window.location.reload()
                        
}
Claudio Júnior

Claudio Júnior

Responder

Posts

28/02/2019

Angelo Rubin

Olá,

Você pode fazer desta forma:
OBS: Estou simulando como se já estivesse com os inputs adicionados ao DOM.

HTML
<input value="value 1"/><br/><br/>
<input value="value 2"/><br/><br/>
<input value="value 3"/><br/><br/>
<input value="value 4"/><br/><br/>
<button>getInputValues</button>


JS
const inputs = document.querySelectorAll('input')
const btn = document.querySelector('button')

const getInputValues = inputs => {
	let values = []
	for(input of inputs){
		values.push(input.value)
	}
	return values
}

btn.addEventListener('click', () => {
	console.log(getInputValues(inputs))
})


Console
["value 1", "value 2", "", "value 4"]


Veja um exemplo funcionando aqui - https://codepen.io/angelorubin/pen/eXprNr?editors=0011
Responder

28/02/2019

Angelo Rubin

Olá,

Você pode fazer desta forma:
OBS: Estou simulando como se já estivesse com os inputs adicionados ao DOM.

HTML
<input value="value 1"/><br/><br/>
<input value="value 2"/><br/><br/>
<input value="value 3"/><br/><br/>
<input value="value 4"/><br/><br/>
<button>getInputValues</button>


JS
const inputs = document.querySelectorAll('input')
const btn = document.querySelector('button')

const getInputValues = inputs => {
	let values = []
	for(input of inputs){
		values.push(input.value)
	}
	return values
}

btn.addEventListener('click', () => {
	console.log(getInputValues(inputs))
})


Console
["value 1", "value 2", "value 3", "value 4"]


Veja um exemplo funcionando aqui - https://codepen.io/angelorubin/pen/eXprNr?editors=0011
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar