Копирование данных из нескольких полей формы в значения ключа JSON.
Как сделать так, чтобы в customerContact копировалось значение из поля E-mail и в {"amount": } копировалось значение из поля sum?
Пока работает только копирование значение в customerContact, благодаря этому ответу.
Не хватает возможности автоматического копирования в amount из sum.
Скрипт для копирования customerNumber в JSON customerContact:
<script>
$(function() {
$(".customerNumber").on('input', function() {
var data = JSON.parse($("#xxx").val());
data.customerContact = $(this).val();
$("#xxx").val(JSON.stringify(data));
});
});
</script>
Скрипт копирования значений введенных пользователем в скрытые элементы input
<script>
function sync()
{
var n1 = document.getElementById('n1');
var n2 = document.getElementById('n2');
var n3 = document.getElementById('n3');
n3.value = n2.value = n1.value;
}
</script>
Форма:
<form action="https://money.yandex.ru/eshop.xml" method="post">
<input required name="shopId" value="111111" type="hidden"/>
<input required name="scid" value="11111" type="hidden"/>
<input name="orderDetails" value="Название товара" type="text" readonly="readonly"/>
<input required class="sum" name="sum" value="200" type="number" min="1" placeholder="Укажите сумму платежа"><br>
<input type="email" class="customerNumber" required name="customerNumber" value="" size="64" placeholder="Ваш Email *" id="n1" onkeyup="sync()"/><br>
<input type="text" required name="cps_phone" value="" size="64" placeholder="Номер телефона для связи *"/><br>
<input type="text" name="custName" value="" size="64" placeholder="Ваше имя"/><br>
<textarea name="custAddr" value="" rows="3" cols="64" wrap="soft" placeholder="Комментарий к заказу"></textarea>
<input name="paymentType" value="" type="hidden"/>
<input name="cps_email" value="" type="hidden" id="n2"/>
<input name="custEmail" value="" type="hidden" id="n3"/>
<input id="xxx" name="ym_merchant_receipt" value='{"customerContact": "customerNumber","taxSystem": 2, "items":[{"quantity": 1, "price": {"amount": 200.00}, "tax": 1,"text": "Название товара","paymentMethodType": "full_prepayment "}]}' type="hidden"/>
<input type="submit" value="Оплатить">
</form>
Заранее спасибо.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости