Очень нужна помощь с input и value
Ребята, прошу помощи!
Есть набор полей в коде платежа для html, вроде таких: <input name="PurchaseDesc" type="text" required="" /> № Договора (цифрами)<br /> <input name="PurchaseAmt" type="number" value="0" min="0" max="20000" step="10" /> Сумма оплаты<br /> <input name="MerchantID" type="hidden" value= "12345678910" /> <input name="CardholderName" type="hidden" value="Y" /> <input name="Email" type="hidden" value="Y" /> <input name="Phone" type="hidden" value="Y" /> И вот незадача! Нужно сделать еще два поля "Ext1" и "Ext2", которые будут по сути логом. У этих двух полей должна быть следующая структура: <input name="Ext1" type="hidden" value="merchant_id:12345678910,external_id:222222222,total:799.0,email: [email]user@domen.ru[/email],phone: 98882223322,sno:usn_income_outcome; payments_sum:799.0, payments_type:1"/> <input name="Ext2" type="hidden" value="sum:799.0,tax:none,tax_sum:0.00,name:thing1,price:799.0,quantity:1.0"/> То есть нужно в эти два поля через запятую проставить как переменные параметры из полей выше, типа Email, Phone и пр., так и константы типа налогов tax, tax_sum. Пытаюсь придумать что-то с CopyValueTo, но получается только вставлять какое-то одно из значений, а не множество. Также подчеркиваю, возможен только чистый html код без всяких php и пр. |
У вас названия полей в camel case, а в скрытые инпуты вы хотите видеть их уже в snake case.
Не лучше ли записывать в hidden input названия полей "как есть"? |
Чистый HTML такие задачи не решает, JS можно использовать?
|
j0hnik, если js не разрешен, то зачем вообще тогда писать на js форуме? )
function insertDataTo(name, data) { document.querySelector('[name="' + name + '"]').value = Object.keys(data).reduce(function(res, key) { return res.push(key + ':' + data[key]), res; }, []).join(','); }; insertDataTo('Ext1', { merchant_id: 12345678910, external_id: 222222222, total: 799.0 }); |
Вроде да, js в каком-то простом варианте вроде проходит
|
Часовой пояс GMT +3, время: 20:10. |