href 属性中的错误值:"Illegal character in query: >"

Bad value in a href attribute: "Illegal character in query: >"

我在 W3C 验证程序中遇到此错误:

Bad value https://www.ncbi.nlm.nih.gov/snp?term=c.1047A>T for attribute href on element a:

Illegal character in query: > is not allowed.

ar</a> or <a href="https://www.ncbi.nlm.nih.gov/snp?term=c.1047A&gt;T" target="_blank">dbSNP<

我试过把>改成&gt;,但是没用,我需要在URL传递这个字符:>。我尝试使用 PHP 和 htmlentities() 中的 urlencode() 函数,但它没有解决这个错误。

一段代码:

<a href="https://www.ncbi.nlm.nih.gov/clinvar/?term=c.-247C&gt;T" target="_blank">ClinVar</a> or <a href="https://www.ncbi.nlm.nih.gov/snp?term=c.-247C&gt;T" target="_blank">dbSNP</a>
<a href="https://www.ncbi.nlm.nih.gov/clinvar/?term=c.-316T&gt;C" target="_blank">ClinVar</a> or <a href="https://www.ncbi.nlm.nih.gov/snp?term=c.-316T&gt;C" target="_blank">dbSNP</a>

此代码是使用数据库中的所有数据生成直接 URL 到外部搜索,需要使用 > 字符。

我该如何解决这个问题

您必须 url 对它们进行编码,而不是 HTML 对它们进行编码。 > 的正确代码是 %3E.