Спросите пользователя о количестве и стоимости пользователя в форме - PullRequest
0 голосов
/ 15 ноября 2018

Я пытаюсь интегрировать метод оплаты, называемый SiamPay, на моем веб-сайте, но я не знаю javascript: (

На сайте SiamPay есть следующие инструкции:

Скопируйте следующий код программы на свою платежную страницу и динамически сгенерируйте количество показанное ниже самостоятельно

<form name="payForm" method="post" action="https://www.siampay.com/b2c2/eng/payment/payForm.jsp">
<input type="submit" name="submit" value="Buy">
<input type="hidden" name="amount" value="Amount">
<input type="hidden" name="merchantId" value="76117579">
<input type="hidden" name="orderRef" value="76117579">
<input type="hidden" name="currCode" value="764" >
<input type="hidden" name="successUrl" value="">
<input type="hidden" name="failUrl" value="">
<input type="hidden" name="cancelUrl" value="">
<input type="hidden" name="remark" value="">
<input type="hidden" name="lang" value="E">
<input type="hidden" name="payMethod" value="ALL">
</form>

Пример в jsp:

<% 
double amount = qty * unitPrice ;
%>

<form name="payForm" method="post" action="https://www.siampay.com/eng/payment/payForm.jsp">
<input type="submit" name="submit" value="Buy">
<input type="hidden" name="amount" value="<%= amount %>">
<input type="hidden" name="merchantId" value="76117579">
<input type="hidden" name="orderRef" value="76117579">
<input type="hidden" name="currCode" value="764" >
<input type="hidden" name="successUrl" value="">
<input type="hidden" name="failUrl" value="">
<input type="hidden" name="cancelUrl" value="">
<input type="hidden" name="remark" value="">
<input type="hidden" name="lang" value="E">
</form>

Я хотел бы создать поле, в котором пользователь может ввести сумму для оплаты в THB (тайская валюта) и перенести это значение в это поле: <входной тип = "скрытое" имя = "сумма" значение = "<% = сумма%>">.

Я думаю, что это относительно просто, но, поскольку я никогда не использую javascript, я немного растерялся.

Я ценю любую помощь.

Большое спасибо.

С наилучшими пожеланиями, Alex

Ответы [ 3 ]

0 голосов
/ 15 ноября 2018

попробуйте что-то вроде этого:

<form name="payForm" method="post" action="https://www.siampay.com/eng/payment

/payForm.jsp">
<input type="submit" name="submit" value="Buy">
<input type="hidden" id="amount" value="<%= amount %>">
<input type="hidden" name="merchantId" value="76117579">
<input type="hidden" name="orderRef" value="76117579">
<input type="hidden" name="currCode" value="764" >
<input type="hidden" name="successUrl" value="">
<input type="hidden" name="failUrl" value="">
<input type="hidden" name="cancelUrl" value="">
<input type="hidden" name="remark" value="">
<input type="hidden" name="lang" value="E">
</form>

<button id='cmdSend'>Click me</button> 
<input id='howmuch' type="number" name="amount" value=1000>

И JS:

document.getElementById("cmdSend").addEventListener("click", myFunction);
function myFunction() {
    document.getElementById("cmdSend").innerHTML = "YOU CLICKED ME!";

    //Get the value the user typed:
    var Value = document.getElementById("howmuch").value;
    console.log(Value);

    //Set the value into the hidden input, can be done in 2 ways:
    document.getElementById("amount").value = Value;
    document.getElementById("amount").setAttribute('value',Value);

    //Check the value got assigned:
    console.log(document.getElementById("amount").value);
}

Fiddle здесь: https://jsfiddle.net/s2ztkn8L/

0 голосов
/ 15 ноября 2018

Чтобы установить значение для элемента, вы можете использовать функцию document.getElementById (). Value.Установите данные суммы в переменную Сумма, как показано ниже.

var Amount = 123;

Кроме того, измените тег ввода для суммы, включив в него тот же идентификатор:

<input type="hidden" name="amount" id="amtId" value="Amount">

var Amount = 123;

function setAmountValue() {
  document.getElementById('amtId').value = Amount;
}
<form name="payForm" method="post" action="https://www.siampay.com/b2c2/eng/payment/payForm.jsp">
  <input type="submit" name="submit" value="Buy" onclick="setAmountValue();">
  <input type="hidden" name="amount" id="amtId" value="Amount">
  <input type="hidden" name="merchantId" value="76117579">
  <input type="hidden" name="orderRef" value="76117579">
  <input type="hidden" name="currCode" value="764">
  <input type="hidden" name="successUrl" value="">
  <input type="hidden" name="failUrl" value="">
  <input type="hidden" name="cancelUrl" value="">
  <input type="hidden" name="remark" value="">
  <input type="hidden" name="lang" value="E">
  <input type="hidden" name="payMethod" value="ALL">
</form>
0 голосов
/ 15 ноября 2018

Нет необходимости создавать дополнительное поле ввода. Вы должны изменить name = сумму ввода type на number , чтобы он стал видимым для пользователя. Теперь пользователь может ввести номер по своему выбору и нажать кнопку оплаты, чтобы отправить форму оплаты.

<form name="payForm" method="post" action="https://www.siampay.com/eng/payment/payForm.jsp">
    <input type="submit" name="submit" value="Buy">
    <input type="number" name="amount" value="" placeholder="Enter amount in THB ">
    <input type="hidden" name="merchantId" value="76117579">
    <input type="hidden" name="orderRef" value="76117579">
    <input type="hidden" name="currCode" value="764" >
    <input type="hidden" name="successUrl" value="">
    <input type="hidden" name="failUrl" value="">
    <input type="hidden" name="cancelUrl" value="">
    <input type="hidden" name="remark" value="">
    <input type="hidden" name="lang" value="E">
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...