我使用的是PayPal标准的订阅按钮。 HTML 看起来像下面的代码片段。 问题是,似乎无法覆盖 FORM 参数 a1/p1/t1、a3/p3/t3、src/sra 以及PayPal订阅按钮的任何其他高级 HTML 变量。 也就是说,它们仍设置为您在 PayPal 网站上的标准按钮配置中配置的值。
问:如何以编程方式覆盖我的网站上的高级PayPal订阅参数? 这可能吗? 谢谢。
<form accept-charset="UTF-8" action="https://www.paypal.com/cgi-bin/webscr" class="signup_company" id="signup_company" method="post">
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="MY_PAYPAL_BUTTON_ID" />
<input type="hidden" name="currency_code" value="USD" />
<!-- First two months of subscription are free. -->
<input type="hidden" name="a1" value="0" />
<input type="hidden" name="p1" value="2" />
<input type="hidden" name="t1" value="M" />
<!-- Recurring subscription payments. -->
<input type="hidden" name="a3" value="29.95" />
<input type="hidden" name="p3" value="1" />
<input type="hidden" name="t3" value="M" />
<input type="hidden" name="src" value="1" />
<input type="hidden" name="sra" value="1" />
<!-- Pass-through variable sent to paypal; it is set in javascript before the submit. -->
<input type="hidden" name="custom" value="Evergreen::::foo@baz.com::::4" />
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_subscribe_SM.gif"
border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"
onclick="$(#signup_company).submit();" />
<img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1" />
</form>
在与PayPal技术人员交谈后,如果您想对 HTML 表单变量进行最大程度的编程控制,以下是如何继续使用PayPal标准订阅按钮:
- 不要在PayPal时将按钮另存为托管按钮。 如果这样做,则无法覆盖已配置并保存在PayPal的任何价格区间。
- 不要加密您的按钮。 这意味着当您创建"订阅"按钮时,您应该做两件事:(a) 在 HTML 表单帖子中使用您的电子邮件地址,而不是PayPal中的某个商家 ID;以及 (b) 取消保护/解密在按钮创建步骤中生成的 HTML 表单变量。
将PayPal生成的 HTML 复制并粘贴到 Web 应用程序中后,您可以依靠 JavaScript 事件处理程序来动态调整 HTML 表单参数,这些参数决定了订阅的定价/持续时间等。