将文本发送到PayPal购物车会产生奇怪的字符

时间:2011-12-12 21:46:34

标签: jquery html string text paypal

我正在使用基本的PayPal购物车(网站付款标准)。

我在HTML中将以下内容作为项目描述的一部分:

<div class="block">
    <p>What&rsquo;s yours?</p>
    <!-- some other html -->
</div>

然后我选择这样的文字:

phrase = $('.block p:first').text();

我也试过这个:

phrase = $('.block p:first').html();

然后,在提交之前,我将其复制到这样的表格中:

$('#PayPalForm input[name=os1]').val(phrase);

表格如下:

<form id="PayPalForm" target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_cart" />
    <input type="hidden" name="business" value="redacted" />
    <input type="hidden" name="no_note" value="1" />
    <input type="hidden" name="add" value="1" />
    <input type="hidden" name="lc" value="US" />
    <input type="hidden" name="return" value="paypal_confirm.html" />
    <input type="hidden" name="cancel_return" value="redacted" />
    <input type="hidden" name="currency_code" value="USD" />
    <input type="hidden" name="bn" value="PP-ShopCartBF" />
    <input type="hidden" name="item_name" value="" />
    <input type="hidden" name="on1" value="phrase" />
    <input type="hidden" name="os1" id="os1" value="" />
</form>

这是我的HTML doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

这是我的文字编码:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

它正在运作。但是,当远程托管的购物车页面打开时(在PayPal上),短语会显示非咒语字符,而撇号应为。

phrase: What’s yours?

至少我希望显示原始&rsquo;而不是’

为什么会发生这种情况,我该怎么做才能清理它?

1 个答案:

答案 0 :(得分:2)

您应该能够指定表单中包含的信息的编码:Setting the Character Set – charset

<input type="hidden" name="charset" value="utf-8">