Гравитационные формы используют JS для подсчета строк в списке и возврата в поле? - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь создать регистрационную форму в гравитационных формах, которая использует поле списка, чтобы сразу несколько человек могли зарегистрироваться.Проблема в том, что мне также нужно получить количество подписчиков, чтобы я мог взимать плату за каждый из них.

С JS, как бы подсчитать количество строк в списке и передать значениев другое поле?Или есть лучший способ сделать это?

ОБНОВЛЕНИЕ:

В зависимости от ответа Обсидианового века это время от времени обновляется и выводится в поле количества:

function updateQty() {
    var rows = document.querySelectorAll('.gfield_list_group').length; // Count rows
    var qty = document.querySelector('.ginput_quantity'); // Define output location
    qty.value = rows; // Put row count in location
    setTimeout(updateQty, 2000); // Repeat every 2 seconds
}
updateQty(); // Execute

1 Ответ

0 голосов
/ 26 сентября 2018

Я не знаком с выводимой разметкой конкретного плагина, но вы можете просто взять все нужные элементы с помощью чего-то вроде .querySelectorAll().Отсюда легко определить их количество, просто запросив их .length.Если вы присвоите этот номер переменной, вы можете ссылаться на него позже, когда захотите вставить его обратно в другое поле - что можно сделать, обновив элемент .innerHTML с переменной.

Это можно увидеть в следующем:

const amount = document.querySelectorAll('.row').length;
const output = document.querySelector('.output');
output.innerHTML = amount;
<div class="row">One</div>
<div class="row">Two</div>
<div class="row">Three</div>
<div class="row">Four</div>
<br />
<div class="output"></div>
...