我有Google Checkout沙箱生成的HTML代码,可以在HTML页面中正常使用。当我在XHTML页面中放入相同的代码时,会抛出以下异常:
对实体“w”的引用必须以';'结尾定界符
它引用了以下w
属性中的网址中的请求参数src
:
<input type="image" name="Google Checkout" alt="Fast checkout through Google"
src="http://sandbox.google.com/checkout/buttons/checkout.gif?merchant_id=211512493599623&w=180&h=46&style=white&variant=text&loc=en_US"
height="46" width="180" />
这是如何引起的?如何解决?
答案 0 :(得分:182)
&符号&
是HTML和XML中的特殊字符。如果要将其用作普通字符,则必须正确编码。 写&
代替&
:
src="...9623&w=180&h=46&style=white&variant=text&loc=en_US"
&
表示已编码实体的开头,例如<
的{{1}}或<
的{{1}}。在您的情况下,解析器尝试将&
解释为实体。但是实体始终以&
终止,因此如果缺少&w
,则会收到错误消息。
答案 1 :(得分:0)
当我在Blogger博客的HTML文件中使用search iq的安装代码时,这对我来说很有效:
<script type="text/javascript">
(function () {
window.siqConfig = {
engineKey: "6e14b3aacb2b93b658f8729adec0c030",
forceLoadSettings: false // change false to true if search box on your site is adding dynamically
};
window.siqConfig.baseUrl = "//pub.searchiq.co/";
var script = document.createElement("SCRIPT");
script.src = window.siqConfig.baseUrl + '/js/container/siq-container-2.js?cb=' + (Math.floor(Math.random()*999999)) + '&engineKey=' + siqConfig.engineKey;
script.id = "siq-container";
document.getElementsByTagName("HEAD")[0].appendChild(script);
})();
在这里给我错误:&engineKey,添加&amp 替换了&之后,我能够保存HTML文件。知识赞赏。 ^ _ ^