【发布时间】:2023-03-26 10:55:01
【问题描述】:
我正在尝试将可变金额(这是总订单价值)传递给贝宝表单中的“金额”变量。但是,该值是从下拉列表中生成的。我搜索了论坛并尝试了一些方法,但找不到我认为的简单解决方案。
下面是代码。
如您所见,我尝试了几个选项,但都没有传递从下拉列表中选择的变量。
我很欣赏 Paypal 的安全问题……但除此之外,还有比我脑洞大得多的人能找到明显的解决方案吗?
谢谢!!
安迪
PS 如果我将 var 'andy' 更改为 33,则一切正常。
<label for="CurrentExcess">Current Excess (£100 - £500 Max.)</label>
<select id="dropdown">
<option value="invalid entry">please select</option>
<option value="12">£100</option>
<option value="18">£150</option>
<option value="24">£200</option>
<option value="30">£250</option>
<option value="36">£300</option>
<option value="42">£350</option>
<option value="48">£400</option>
<option value="54">£450</option>
<option value="60">£500</option>
<option value="all us to discuss">more then £500</option>
</select>
</div>
<div>
<label for="price">Your membership fee will be: £</label>
<input type="text" name="price" value="" id="mytext" />
<script type="text/javascript">
var mytextbox = document.getElementById('mytext');
var mydropdown = document.getElementById('dropdown');
mydropdown.onchange = function(){
mytextbox.value = this.value;
}
document.getElementById("finalpaypal").value = mytext;
var andy = mytext
</script>
<form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="business" value="me@me.com">
<input type="hidden" name="item_name" value="My Title">
<input type="hidden" name="quantity" value="1">
<input type="hidden" name="item_number" value="11">
<!-- <script>
document.write('<input type="hidden" name="amount" value='+andy+'>');
</script> -->
<input type="hidden" name="amount" id="finalpaypal">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="currency_code" value="GBP">
<input type="hidden" name="add" value="1">
</form>
</body>
</html>
更新:感谢 sdleihssirhc 的意见。这确实有帮助,但由于我对 javascript 有点笨拙,我仍在苦苦挣扎。
我没有强调的一点是,我试图将“mytext”中的值转换为“amount”,然后传递给paypal。而且我不在乎如何,但似乎该值是使用“OnChange”计算的......这一切都变得有点疯狂。
代码的主要部分现在在帖子的最后一点上如下所示。
任何人都有任何好主意。非常感谢!!!!
<label for="CurrentExcess">Current Excess (£100 - £500 Max.)</label>
<select id="dropdown">
<option value="invalid entry">please select</option>
<option value="12">£100</option>
<option value="18">£150</option>
<option value="24">£200</option>
<option value="30">£250</option>
<option value="36">£300</option>
<option value="42">£350</option>
<option value="48">£400</option>
<option value="54">£450</option>
<option value="60">£500</option>
<option value="all us to discuss">more then £500</option>
</select>
</div>
<div>
<label for="price">Your membership fee will be: £</label>
<input type="text" name="price" value="" id="mytext" />
<form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_cart">
<input type="hidden" name="business" value="me@me.com">
<input type="hidden" name="item_name" value="My Title">
<input type="hidden" name="quantity" value="1">
<input type="hidden" name="item_number" value="11">
<input type="hidden" name="amount" id="finalpaypal">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="currency_code" value="GBP">
<input type="hidden" name="add" value="1">
</form>
<script>
var mytextbox = document.getElementById('mytext');
var mydropdown = document.getElementById('dropdown');
var finalpaypal = document.getElementById('finalpaypal');
mydropdown.onchange = function(){
mytextbox.value = this.value;
finalpaypal.value = this.value;
}
document.getElementById("finalpaypal").value = mytext;
</script>
</body>
</html>
【问题讨论】:
标签: javascript variables paypal parameter-passing