我的数据库中有以下编码:
<p>
Content <span style="color: #ffffff"><span style="background-color: #ff0000">1+1+1+1=4</span></span>.</p>
我想将此值放入 HTML div 标记中。
我是在将上面的值发送回客户端之前对其进行解码,还是在客户端对其进行解码?
我正在使用 jquery 和 asp.net (vb)
这是我的 jquery,它只是将 json 数据以 html 形式显示在屏幕上,而不是在警报框中弹出。
function get_page( id ) {
$.ajax({
url: 'get_json.aspx?rand=' + Math.random(),
type: 'POST',
data: { intPageID:id },
dataType: 'json',
success: function(results) {
alert(results);
/*
$('input#txtID').val(results.id);
$('input#txtHeading').val(results.heading);
$('textarea#taContent').val(results.content);
*/
}
});
这是以下问题的后续问题:Encode HTML before POST
最佳答案
这是一个风格/偏好的问题,因为显然你可以用任何一种方式渲染它。
我会在服务器端渲染它:
- 节省带宽(编码开销+解码脚本)
- 使输出更简单、更快并使用更少的 JavaScript
- 隐藏 html 输出的内部详细信息。用户不必知道某些页面片段以 html 形式存储在数据库中。
如果您偏执,请在编码的同一层中进行解码(或使用相同的工具) - 这将有助于避免误解“编码”的确切含义;)
关于asp.net - 数据库中的编码 HTML 返回页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899365/