2010-12-14 12 views
5

¿Hay alguna solución para el error de validación w3c para un & presente en urls o en algún otro lugar en el marcado HTML?
Dice:w3c markup validator ampersand (&) error

& no comenzó una referencia de carácter. (& probablemente debería haberse escapado como &.)

El símbolo de unión en mi caso es una parte de una dirección URL para gravatar miniatura. Esta es la parte problemática de una url:

c91588793296e2?s=50&d=http%3A%2F%.

Respuesta

9

para cada & señal de que tienes escribir & en su ejemplo sería:

c91588793296e2?s=50&d=http%3A%2F% 
+3

Tenga en cuenta que no siempre se requiere codificar símbolos, aunque probablemente sea más fácil hacerlo. Ver http://mathiasbynens.be/notes/ambiguous-ampersands. –

+0

Puede usar una detección de expresiones regulares para agregar automáticamente & s donde falta: 'htmlOut = htmlOut.replaceAll (" & (?! [A-zA-Z] +;) "," & ");' – kernel

+0

Tengo un inicio de sesión -con código de Facebook que agrega un montón de ampersands sucios no codificados y crea errores de validación. ¿Debo realmente escribir el código para corregir el error de otra persona? : / – andreaconsole

4

Reemplazar con &

4

debería ser:

c91588793296e2?s=50&d=http%3A%2F%.

notificación del &

Sé que se siente poco firme, pero los símbolos de unión tiene que ser codificada como entidades HTML, que se indican con símbolos de unión confusamente.