<div class="info">
<div class="info-inner">
<div>
<p class="quantity">2</p>
</div>
<div>
<p class="square">63,2</p>
</div>
<div>
<p class="floor">2</p>
</div>
</div>
<button>Click</button>
</div><div id="form">
<form action="" class="contact-info-form" >
<input name="quantity" id="quantity" type="text" placeholder="Quantity" required="required">
<input name="square" id="square" type="text" placeholder="Square" required="required">
<input name="floor" id="floor" type="text" placeholder="Floor" required="required">
<input name="name" id="name" type="text" placeholder="Name" required="required">
<input name="phone" id="phone" type="text" placeholder="Phone" required="required">
<button class="send">Send</button>
</form>
</div>
const containerSelector = '.info';
const buttonSelector = `${containerSelector} button`;
const props = [ 'quantity', 'square', 'floor' ];
const { elements } = document.querySelector('form');document.addEventListener('click', ({ target: t }) => {
if ((t = t.closest(buttonSelector)) && (t = t.closest(containerSelector))) {
props.forEach(n => elements[n].value = t.querySelector(`.${n}`).textContent);
}
});document.querySelectorAll(buttonSelector).forEach(function(n) {
n.addEventListener('click', this);
}, ({ currentTarget: t }) => {
while (!(t = t.parentNode).matches(containerSelector)) ;
for (const n of props) {
elements[n].value = t.getElementsByClassName(n)[0].innerText;
}
});