En realidad, no hay problema en que tenga html. Posiblemente tengas otros, como que contenga saltos de línea o algún caracter que choque con la sintaxis javascript.
En ese caso deberías escapar la cadena antes de evaluarla.
Una función de escape que suelo utilizar en php cuando quiero pasar html a javascript es esta:
Código PHP:
function js_encode($s){
$texto='';
$lon=strlen($s);
for($i=0;$i<$lon;++$i){
$num=ord($s[$i]);
if($num<16) $texto.='\x0'.dechex($num);
else $texto.='\x'.dechex($num);
}
return $texto;
}