我正在使用PHP和for
循环将数据准备到正确的html
,并使用JSON
将数据输出为appended
并显示在页面上。 JSON
斜杠转义导致浏览器错误地查看html。
这是我的PHP for循环:
$json = '<div id="rsec3" class="rsec">';
for($i=0; $i<count($array); $i++)
{
$coverart = $array[$i]['cover'];
if(empty($coverart))
{
$coverart = "nocoverart.gif";
}
$json .= '<div><img="/video/cover/thumbs/' . $cover . '"></div>';
}
$json .= '</div>';
$json = json_encode(array('ok' => 'ok', 'html' => $json));
echo $json;
这是我的javascript解析并附加json:
$.get('/index_get.php?iid='+this.id,function(data){
$('#indload').hide();
js=jQuery.parseJSON(data);
$('#indr').append(js.html);
});
这是浏览器显示的内容,一堆无用的行话,并且它自己附加</img=">
?
<img=" video cover thumbs img.png"></img=">
如何防止这种情况发生,并正确显示图像?
答案 0 :(得分:1)
我认为问题可能是php代码上无效的HTML标记<img>
。在<img>
代码中,src
缺失,<img>
代码未关闭。
更改以下内容
$json .= '<div><img="/video/cover/thumbs/' . $cover . '"></div>';
到
$json .= '<div><img src="/video/cover/thumbs/' . $cover . '" /></div>';
答案 1 :(得分:-1)
您需要关闭字符串中的图片标记
$json .= '<div><img="/video/cover/thumbs/' . $cover . '"/></div>';